ERLEDIGT
JA
JA
ANTWORTEN
4
4
ZUGRIFFE
772
772
EMPFEHLEN
-
Hallo,
weiß denn jemand Rat, wie ich bei (fokusierten) JButtons die Auslösung der Action durch das Drucken der Leertaste- bzw. Eingabetaste unterdrücke?
Das Project ist schon größer, und alle ActionListener auf MouseListener umstellen wäre sicher doof.
-
23.09.10 11:30 #2
Moin,
wenn ich Dich richtig verstehe, solltest Du es mit einem KeyListener versuchen !
BTW: warum eigentlich MouseListener, wenn Du TastenEvents abfragfen willst
Ich nutze das immer wie folgt:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
// einem Button einen KeyListener zuweisen - hier über einen Adapter ! jButtonAnnehmen.addKeyListener( new dlgAcceptRejectAlarm_jButtonAnnehmen_keyAdapter(this) ); ... // die Adapterklasse class dlgAcceptRejectAlarm_jButtonAnnehmen_keyAdapter extends java.awt.event.KeyAdapter { DlgAcceptRejectAlarm adaptee; dlgAcceptRejectAlarm_jButtonAnnehmen_keyAdapter( DlgAcceptRejectAlarm adaptee ) { this.adaptee = adaptee; } public void keyPressed( KeyEvent e ) { adaptee.jButtonAnnehmen_keyPressed(e); } } ... // die ausprogrammierte keyPressed-Methode void jButtonAnnehmen_keyPressed( KeyEvent e ) { switch( e.getKeyCode() ) { case KeyEvent.VK_SPACE: break; // mache nix case KeyEvent.VK_ENTER: break; // mache nix case KeyEvent.VK_F10: // mache hier irgendwas ... break; } }
Gruß
KlausEs ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!
Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
-------------------------------------------------------------------------------------------------
Ich beantworte keine Fragen per PN !!
Stellt Eure Fragen im Forum - dann haben alle etwas davon !!
-
Nicht so.
Buttons, Actions - es ist ja alles fertig und im Betrieb. Allerdings seit wir einen Kunden haben der Tastatur einsetzt (Normalfall bei uns - Touchscreen), meckert er, beim (zufälligen) Klick auf Leertaste/Eingabe würden die fokusierten Buttons Action auslösen.
Ich dachte eher an eine InputMap für die Button-Parentklasse.
Anfassen eines jeden Listener kommt bei dem Volumen nicht in Betracht. ActionListener sollen ActionListener bleiben. Nur die Auslöseregeln sollen sich ändern.
-
23.09.10 12:06 #4benjamin11 Tutorials.de Gastzugang
Hallo,
vielleicht hilft dir die Methode getModifiers() des ActionEvents weiter. Sie liefert bei einem Mausklick (wenn keine zusätzlichen Tasten gedrückt wurden) immer einen konstanten Integer-Wert 16 zurück. Wenn du jedoch mit der Leertaste beispielsweise den Klick auslöst, liefert getModifiers() den Wert 0. Somit könntest du das ja über ein if-else-Konstrukt abfangen.
Ich hoffe, ich konnte dir ein wenig weiterhelfen.
Gruß,
Ben
-
Ähnliche Themen
-
Nicht-modalen Dialog mittels OnLButtonDblClk() auslösen
Von Cappaja im Forum VisualStudio & MFCAntworten: 2Letzter Beitrag: 17.07.09, 16:29 -
FlowLayoutPanel - wie finde beim Event auslösen das richtige Control?
Von Asterix-Ac im Forum .NET Windows FormsAntworten: 3Letzter Beitrag: 15.06.07, 19:46 -
JButton mit Taste auslösen und ...
Von TomDelonge im Forum JavaAntworten: 4Letzter Beitrag: 29.06.05, 17:25 -
Applet: ActionEvent e im ActionEvent e ? --> Fehler!
Von Wingsydex im Forum JavaAntworten: 3Letzter Beitrag: 25.01.05, 19:17 -
beim pop-up schließen alt-F4 auslösen
Von PEZ im Forum Javascript & AjaxAntworten: 5Letzter Beitrag: 16.03.04, 17:13





Zitieren

Login





