button mit ENTER betätigen

Status
Nicht offen für weitere Antworten.

biker126

Bekanntes Mitglied
hallöchen

wie kann ichs erreichen, dass ich einen button mit der enter-taste "drücken" kann?
muss ich da n keylistener implementieren und den jedem button hinzufügen? und soll ich dann im keylistener einfach den gleichen code hinschreiben wie in der actionPerformed-methode?? oder soll ich zb. n actionEvent losschicken?

ausserdem weiss ich nicht, wie ich unterscheiden soll welcher button grad den focus hat, weil nur für den soll ja der code ausgeführt werden. muss ich da noch n focuslistener oder sowas implementieren?

wie macht ihr sowas?
 

lhein

Top Contributor
Überprüfung ob Fokus über hasFocus() glaub ich.

Ansonsten kann man Enter für einen Button drücken, wenn dieser den Fokus hat. Sinnvoll wäre allerdings, sich eine Routine zu schreiben, die die Fokusreihenfolge bei deinen Elementen festlegt, da Java nicht sowas kennt, was die Reihenfolge festlegt. In Delphi und anderen Sprachen gabs da glaub immer nen Attribut in den Componenten, was die Reihenfolge abbildet.

Achja, zu beachten ist auch, dass die Methode requestFocus() nur eine Anfrage darstellt und man nicht sicher sein kann, ob die Componente, die den Fokus requested hat diesen auch bekommt bzw. bekommen hat.

Aber genaueres dazu lies mal unter den Componenten in den Methoden requestFocus und requestFocusInWindow wars glaub nach.

LR
 
B

Beni

Gast
LR hat gesagt.:
Sinnvoll wäre allerdings, sich eine Routine zu schreiben, die die Fokusreihenfolge bei deinen Elementen festlegt, da Java nicht sowas kennt, was die Reihenfolge festlegt.
Von dem FocusManager und der FocusTraversalPolicy hast du aber auch schon gehört? Die Reihenfolge ist vielleicht ein bisschen chaotisch, aber sie ist vorhanden.

mfg Beni
 

biker126

Bekanntes Mitglied
hab ich das richtig verstanden?

wenn ein button den fokus hat kann man ihn automatisch mit enter betätigen? aber wo muss ich dann den code hinschreiben? weil atm passiert bei meiner applikation noch nix...
 
B

Beni

Gast
In den ActionListener, es sollte keinen Unterschied machen, ob ENTER oder die Maus benutzt wurde.
Du benutzt schon ein Betriebssystem, bei dem ENTER existiert?

Und sonst kannst du mal einem einzigen Button einen KeyListener hinzufügen, um rauszufinden, ob die KeyEvents überhaupt dort ankommen.

mfg Beni
 

lhein

Top Contributor
Beni hat gesagt.:
LR hat gesagt.:
Sinnvoll wäre allerdings, sich eine Routine zu schreiben, die die Fokusreihenfolge bei deinen Elementen festlegt, da Java nicht sowas kennt, was die Reihenfolge festlegt.
Von dem FocusManager und der FocusTraversalPolicy hast du aber auch schon gehört? Die Reihenfolge ist vielleicht ein bisschen chaotisch, aber sie ist vorhanden.

mfg Beni


Japp, kenne ich. Mit Routine habe ich nicht gemeint, dass er sich nen eigenes Fokusmanager schreiben soll, sondern dass er sich um es mit den korrekten Worten auszudrücken, eine eigene TraversalPolicy schreiben soll.

LR
 

biker126

Bekanntes Mitglied
hmm, also entweder bin ich zu blöd oder meine actionPerformed is einfach falsch...

so wie ich euch verstanden haben müsste ich rein gar nix spezielles machen damit man einen button mit enter betätigen kann, richtig?

also meine methode sieht atm so aus:
Code:
class MyActionListener implements ActionListener
{
    public void actionPerformed(ActionEvent event)
    {
        String cmd = event.getActionCommand();
        if (cmd.equals("ButtonLabel"))
        {
            // tu dies und das
        }
        else if (cmd.equals("AnderesButtonLabel"))
        {
            // mach was anderes
        }
    }
}

müsste ich an der was ändern, damit ENTER auch geht. weil atm gehts wie gesagt nicht...
 
B

Beni

Gast
Wenn diese ActionListener richtig funktioniert, wenn du mit der Maus auf den Button klickst, dann musst du ihn nicht ändern.

Ich frag nochmal: kommt das KeyEvent beim Button an? Zum testen diesen Code einfügen:
Code:
button.addKeyListener(new KeyAdapter(){
  public void keyPressed( KeyEvent e ){
    System.out.println( "Ok, die KeyEvents kommen beim Button an. Werden aber falsch verarbeitet?" );
  }
});

mfg Beni
 

SBS

Aktives Mitglied
Hi, nun gibt sicherlich immer mehrere Möglichkeiten, wobei das mit dem Focus hab ich noch nicht gemacht, ich hab es neulich so gelöst:

Code:
...
private KeyListener kl; //some keylistener
...
class InKeyListener extends KeyAdapter //inner class for keylistener...
        {
                public void keyPressed(KeyEvent ke)
                {
                        if(ke.getKeyCode()==KeyEvent.VK_ESCAPE) //für deine escape taste
                        {
                                dispose(); //verschwinde...du fenster du
                        }
                        if(ke.getKeyCode()==KeyEvent.VK_ENTER) //für deine enter taste
                        {
                                buttonOk(); //mache dies...hier z.b. meine methode 
                        }
                }
        };
...
kl = new InKeyListener(); //new keylistener
...
itemnumber_field.addKeyListener(kl);
/*hier wird der listener eingebettet! bei mir in ein
JTextField...wenn nun wer in dem Textfield ist und Enter betätigt, funktionierts,
solltest du kein Textfield haben, musst du deinen keylistener auf das objekt adden,
dass, vor betätigen der entertaste, standardmäßig angewählt ist, damit es funktioniert.
dass können listen, fields, button, usw sein...*/

Hoffe das hilft dir weiter, grüße
 

biker126

Bekanntes Mitglied
so, hab jetzt mal beni's keylistener nem button hinzugefügt. und es wird einfach das System.out.... ausgeführt wenn man bei dem button enter drückt.
heisst das jetzt, dass die actionPerformed beim enterdrücken DOCH NICHT ausgeführt wird???
muss ich die umschreiben oder muss ich n keylistener implementieren?
 

biker126

Bekanntes Mitglied
die "actionPerformed" ist ein folgender klasse

Code:
 class Fenster extends Frame implements ActionListener

so ungefähr. hab die dateien atm nich hier. die sind auf nem anderen pc... *g*
aber wär trotzdem kewl wenn ihr mir weiterhelfen könntet ;)
 

biker126

Bekanntes Mitglied
hui... die is aber saulang und isn "krüppel" code ^^

aber sie am WE mal posten. hab die daten wie gesagt ned hier. aber ihr könnt sie euch dann ja gerne anschauen ;).
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
X Javafx button per enter auslösen AWT, Swing, JavaFX & SWT 5
G Button auf Enter reagieren AWT, Swing, JavaFX & SWT 5
C Button ActionListener funktioniert nicht AWT, Swing, JavaFX & SWT 1
G Button auswerten und ausgeben ob richtig oder falsch AWT, Swing, JavaFX & SWT 1
D Button und Textfeld Darstellung AWT, Swing, JavaFX & SWT 3
H Button / Design Ideen AWT, Swing, JavaFX & SWT 2
Mojo7310 Ändern von Text in JLabel mit einem Button AWT, Swing, JavaFX & SWT 11
B JavaFX Sprachumschaltung mit Button auf der HMI AWT, Swing, JavaFX & SWT 6
T TableView Button onAction AWT, Swing, JavaFX & SWT 3
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
JavaBeginner22 Button Hilfe AWT, Swing, JavaFX & SWT 0
Jose05 JavaFX: eigene FXML-Datei für einen Button AWT, Swing, JavaFX & SWT 3
J Button-Keyboard Interaktion AWT, Swing, JavaFX & SWT 7
EinNickname9 Swing Button mittig positionieren AWT, Swing, JavaFX & SWT 4
L actionListener für Button AWT, Swing, JavaFX & SWT 97
melaniemueller Verschiebung eines Fensters über Button AWT, Swing, JavaFX & SWT 27
I JavaFX Hover-Effekt bei Button AWT, Swing, JavaFX & SWT 11
Zeppi Swing Button soll Spiel zurücksetzen AWT, Swing, JavaFX & SWT 5
G Button Strings Effektiver setzen AWT, Swing, JavaFX & SWT 3
CptK windowClosed() nur aufrufen, wenn Fenster nicht über Button geschlossen wird AWT, Swing, JavaFX & SWT 1
W Zweites/neues Fenster durch Button öffnen AWT, Swing, JavaFX & SWT 6
B Text mit Absatz + OK-Button, der Fenster wieder schließt AWT, Swing, JavaFX & SWT 7
T Button für GUI programmieren AWT, Swing, JavaFX & SWT 1
N Bilder auf Button einfügen und mehrmals ändern (ein Button, mehrere ActionListener) AWT, Swing, JavaFX & SWT 2
W JavaFX Button - optimale Breite berechnen AWT, Swing, JavaFX & SWT 1
L Swing Button Farbe ändern/wechseln AWT, Swing, JavaFX & SWT 2
P Button simpler random auf einem JPanel verteilen? AWT, Swing, JavaFX & SWT 3
S JavaFx Zufallsfarbe beim Button-Klick AWT, Swing, JavaFX & SWT 22
N Aufruf einer anderen Klasse durch Button ActionListener AWT, Swing, JavaFX & SWT 2
VPChief Swing Eclipse: Nach Exportieren, Button funktioniert nicht mehr AWT, Swing, JavaFX & SWT 26
Z Button bewegen und Plätze tauschen AWT, Swing, JavaFX & SWT 4
Z Swing Button anklicken und bewegen AWT, Swing, JavaFX & SWT 2
K JavaFX Button verbinden AWT, Swing, JavaFX & SWT 6
Z Mit einem Button einen anderen Button Triggern AWT, Swing, JavaFX & SWT 3
M JavaFX Button action abhängigkeit von Tab AWT, Swing, JavaFX & SWT 1
A Swing JTextField an Button übergeben für Popup-Fenster funktioniert nicht AWT, Swing, JavaFX & SWT 3
H Eigener Dialog mit Rückgabe -> Warten auf Button AWT, Swing, JavaFX & SWT 3
F JLabel mit ImageIcon per Button bewegen AWT, Swing, JavaFX & SWT 4
L Button Funktion zuweisen in WindowBuilder AWT, Swing, JavaFX & SWT 22
A Button mit Speicher-Funktion AWT, Swing, JavaFX & SWT 8
krgewb Swing Icon von Button AWT, Swing, JavaFX & SWT 12
J Schriftart über einen Button ändern AWT, Swing, JavaFX & SWT 1
Bluedaishi JavaFX Button Image aus Datenbank AWT, Swing, JavaFX & SWT 13
CptK Swing Button: ImageIcon unter den Text AWT, Swing, JavaFX & SWT 4
Ø Swing Button in anderer Klassen ausführen AWT, Swing, JavaFX & SWT 6
X Neues Fenster mit Button öffnen und bearbeiten AWT, Swing, JavaFX & SWT 4
cool_brivk24 Swing Button Farbe ändern AWT, Swing, JavaFX & SWT 2
K JavaFX TextInputDialog Button Text ändern AWT, Swing, JavaFX & SWT 1
L ActionListener zu Button in Panel hinzufügen AWT, Swing, JavaFX & SWT 10
J Aus welchen Grund wird der Button nicht angezeigt im GridPane? AWT, Swing, JavaFX & SWT 1
S GUI Schließen Button auf der linken Seite AWT, Swing, JavaFX & SWT 2
J Swing Bild in Button AWT, Swing, JavaFX & SWT 11
das_leon AWT Button Design ändern AWT, Swing, JavaFX & SWT 5
J Thread per Button starten AWT, Swing, JavaFX & SWT 10
E Button verschwindet nachdem ein Rechteck gezeichnet wurde AWT, Swing, JavaFX & SWT 5
G JComboBox: Arrow-Button permanent anzeigen AWT, Swing, JavaFX & SWT 4
emma_louisa JavaFX MenuBar Zweitfenster; bei Button "Abbrechen" nur das Zweitfenster schließen AWT, Swing, JavaFX & SWT 2
I JavaFX: "globaler Button" AWT, Swing, JavaFX & SWT 0
M JavaFX ActionEvent Button AWT, Swing, JavaFX & SWT 6
S JavaFx - Button ActionEvent Probleme AWT, Swing, JavaFX & SWT 3
J Button lässt sich nicht auf dem JPanel verschieben AWT, Swing, JavaFX & SWT 5
Q AWT TicTacToe Image auf Button hinzufügen AWT, Swing, JavaFX & SWT 5
H JavaFX - Button und Text - Falsche Darstellung AWT, Swing, JavaFX & SWT 3
S Swing Problem mit Button und ActionListener AWT, Swing, JavaFX & SWT 5
it_is_all Swing Button, ComboBox,... -- Unterschied: NetBeans Design <-> Ausführung AWT, Swing, JavaFX & SWT 2
B FXML GUI - Button ausblenden AWT, Swing, JavaFX & SWT 1
it_is_all JPanel verschwindet nach Button-Klick AWT, Swing, JavaFX & SWT 2
L JavaFX button über andere Klasse ändern AWT, Swing, JavaFX & SWT 7
L Suchergebnisse variabel mit Button anzeigen lassen AWT, Swing, JavaFX & SWT 3
K über Button andere Java Klasse aufrufen AWT, Swing, JavaFX & SWT 15
J Event Handling Button "enablen" wenn Eingaben in Textfeldern korrekt sind AWT, Swing, JavaFX & SWT 1
Ksanatos Swing Bild (.jpg) einlesen und per Button wechseln AWT, Swing, JavaFX & SWT 9
U JavaFX Wechsel der Scene nach betätigen eines Button AWT, Swing, JavaFX & SWT 2
V JavaFX Button Controller Fehler, trotz Erfolg in einem anderem Code? AWT, Swing, JavaFX & SWT 7
E Fehler bei Button AWT, Swing, JavaFX & SWT 1
A Swing Tabelle wird bei Betätigung des Button nicht befüllt AWT, Swing, JavaFX & SWT 17
C Applet Zeichnen über Button-Click AWT, Swing, JavaFX & SWT 13
GreenTeaYT Button funktioniert nicht für Ein-und Auszahlungen? AWT, Swing, JavaFX & SWT 8
MaxG. Swing Farbe von Button beim drücken ändern AWT, Swing, JavaFX & SWT 4
S per Button Variableninhalt aus anderer Klasse holen AWT, Swing, JavaFX & SWT 3
A Swing GUI - Button soll Frame verändern AWT, Swing, JavaFX & SWT 4
T Frage zu GUI - Button soll Objekt erfassen AWT, Swing, JavaFX & SWT 2
MaxG. Swing Bild Button AWT, Swing, JavaFX & SWT 7
P Jframe Bild einfügen, Hintergrund Farbe ändern, und Button schrift Größe ändern AWT, Swing, JavaFX & SWT 2
A Nach klick auf Button neuen Inhalt im gleichen Fenster AWT, Swing, JavaFX & SWT 3
N Swing Abfrage durch JTextField nach Button betätigung AWT, Swing, JavaFX & SWT 3
H JavaFX via .fxml einen abgeleiteten Button erstellen... AWT, Swing, JavaFX & SWT 4
T JavaFX Button als Runnable AWT, Swing, JavaFX & SWT 4
OlafHD JPasswordField mit Button eingeben AWT, Swing, JavaFX & SWT 4
B JavaFX Wie programmiere ich hier einen "Weiter" Button? AWT, Swing, JavaFX & SWT 11
S AWT Daten über TextField und Button in array speichern AWT, Swing, JavaFX & SWT 5
D JavaFX Button Links- und Rechtsklick? AWT, Swing, JavaFX & SWT 1
Thallius Button von JDatePicker customizen? AWT, Swing, JavaFX & SWT 0
K eigener button in swing AWT, Swing, JavaFX & SWT 3
C Durch klicken von Button neues Fenster oeffnen AWT, Swing, JavaFX & SWT 18
R Button Aktion AWT, Swing, JavaFX & SWT 3
Z Swing Button Click AWT, Swing, JavaFX & SWT 1
J Problem mit Button darstellung AWT, Swing, JavaFX & SWT 23
K JavaFX Unresolved class button bar AWT, Swing, JavaFX & SWT 8
T Event Handling JLabel als eigener Button AWT, Swing, JavaFX & SWT 7

Ähnliche Java Themen

Neue Themen


Oben