carookee - group communication for you
Home / JavaForum / Swing + AWT
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
4.891 User online
0 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 323 von 1460 (22%) |<   <   >   >|

Autor TiSch
Datum 18.07.03, 14:44
Betreff Re: Noch etwas zu meinem JDialog....


Hallo nochmal,

registerKeyboardAction ist veraltet (warum auch immer), deshalb sollte man die Action- und InputMaps benutzen die jede JComponente hat. Man braucht nicht unbedingt die createRootPane zu überschreiben:

import java.awt.event.*;
import javax.swing.*;

public class EscapeDialog extends JDialog
{
    public static void main(String[]args)
    {
        new EscapeDialog();
    }
    
    private JTextField input = null;
    
    public EscapeDialog()
    {
        setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
        createCloseAction();
        initTextField();
        pack();
        setLocationRelativeTo(null);
        setVisible(true);
    }
    
    private void initTextField()
    {
        input = new JTextField(10);
        getContentPane().add(input);
    }
    
    private void createCloseAction()
    {
        Action closeAction = new AbstractAction()
        {
            public void actionPerformed(ActionEvent e)
            {
                //do what ever you want
                dispose();
            }
        };
        KeyStroke stroke = KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0);
        getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(stroke, "closeDialog");
        getRootPane().getActionMap().put("closeDialog", closeAction);
    }
}


Grüße,
Tim




Diskussionsverlauf:
JDialog mit KeyEvent... WARUM GEHT DAS NICHT....
    Noch etwas zu meinem JDialog....
        Re: Noch etwas zu meinem JDialog....
            Re: Noch etwas zu meinem JDialog....
            Re: Noch etwas zu meinem JDialog....

 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com