Hallo,
ich programiere einen Taschenrechner. DieTasten 1-9 sind mit Buttonlistenern geschrieben. Jetzt will ich, dass ich die Zahlen und Zeichen auch mit dem Nummernblock eingeben kann. Das wollte ich mit Keylistener realisieren, doch ich weiß nicht genau, wie ich es umsetzen soll.
bis jetzt bin ich soweit... Wie bekomme ich es jetzt hin, dass er auf die Taste "0" reagiert?
Das ganze soll in dem Textfeld "Display" angezeigt werden.
this ist eine Referenz auf das aktuelle Objekt in dem Du Dich zum Aufrufzeitpunkt befindest - und würde in dem Fall nur Sinn machen, wenn Display (Variablennamen sollten mit einem Kleinbuchstaben anfangen) das Interface KeyListener implementiert.
Hier mal ein Bsp. wie man an ein TextField einen anonymen KeyListener anhängen kann.
Ein KeyListener reagiert nur, wenn die Komponente den Fokus hat, daher bin ich immer noch der Meinung, dass in Du eigentlich Key Bindings brauchst statt Listener. Dein Vorhaben, was ich aus Deinen Codefragmenten glaube zu schliessen, macht mit einem KeyListener an der Komponente in die die Werte eingetragen werden wenig Sinn.
Hallo zusammen,
ich habe ein Suchen-Button und ein Suchfeld
ich möchte in Suchfeld etwas schreiben und auf Eingabetaste drücke soll es funktionieren also ich möchte Suchen-Button mit KeyListener binden und habe ich folgende Code
[JAVA=42]
suchen_button = new JButton("Suchen")
.
.
.
suchen_button.addKeyListener(new KeyListener() {
public void keyPressed(KeyEvent e) {
buttonBerechneClicked();
String name =person_suchen.getText();
String sql ="SELECT * FROM student WHERE Vorname = '"+name + "' OR Nachname='"+name+"'";
ResultSet result= query.executeQuery(sql);
// if (result==null){ //TODO: gib aus wenn keinen Eintrag trifft
// ergebnis_feld.setText("diese Eintrag existiert in DB nicht...");
// }else{
Du willst also das wenn man im Textfeld auf Enter drückt was passiert oder beim Button?
Im ersten Fall musst du dem Textfeld den KeyListener zuweisen und musst überprüfen ob die gedrückte Taste die Entertaste ist, ansonsten wird die Methode bzw das was im KeyListener immoment steht immer ausgeführt bei jedem Tastendruck
ich schreibe im Suchfeld ein Name und drücke auf Enter-Taste also ich will nicht extra mit Maus auf die Suchen-Button gehen und klicken
aber reagiert nicht egal auf welche taste ich drücke.....
zum Beispiel mit diese zeilen code funktioniert es
Ich habe jetzt auch mein Programm fertig geschrieen... hat etwas länger gedauert als gedacht, aber wenigstens gehts jetzt. Und nun wollte ich das Programm mit den Tasten auf der Tastatur stueren, damit man nicht immer die Maus in die Hand nehmen muss. Ich habe in dem Thread das:
gefunde... aber ich werde nicht schlau draus. Ich habe zum Beispiel einen Button der OK heißt. den möchte ich gerne mit Enter "drücken", aber wo lege ich denn fest, dass das mit Enter passieren soll?