# Swing virtuelle Tastatur realisieren



## vladimir (30. Jun 2009)

Hallo liebe Leute,

ich will mir eine virtuelle Tastatur programmieren. Als erstes wollte ich das ganze mit Zahlen ausprobieren. Habe mir eine Zahlenoberfläche mit Swing erstellt, wie bei einen Taschenrechner. Das jFrame wurde in den Vordergrund durch die Methode frame.setAlwaysOnTop(true); gesetzt.

Für jede Taste gibt es eine eigene ActionEvent methode, durch Robotobjekt wird der Tastendruck simuliert: Beispiel für Button0

 private void jB0ActionPerformed(java.awt.event.ActionEvent evt) 
{                                    
  robot.keyPress(KeyEvent.VK_0); //Null drücken
  robot.keyRelease(KeyEvent.VK_0); //Null loslassen
}  
das Problem ist nur das, ich auf der virtuellen Tastatur klopfen kann, doch ich bekomme keine Eingaben in mein Textfeld. Beispiel ich setze den Fokus in das Suchtextfeld von Google, danach klicke ich auf der Tastatur herum. Das Google Textfeld verliert den Fokus und es passiert gar nichts. Wie kann ich eine vernünftige virtuelle Tastatur in Java realisieren.

Gruß Vladimir


----------



## vladimir (26. Okt 2009)

Die Lösung ist einfach! Ein Dialog erstellen und das TextField als Objekt übergeben! Wird ein Event ausgeführt, den eingegebenen Wert in das TextFeld schreiben und die Ansicht aktualisieren! Die Zahl steht in dem Feld!


----------



## KrokoDiehl (26. Okt 2009)

Das verstehe ich nun gar nicht. Dein Problem war, dass du mit deiner virtuellen Tastatur nichts in das Google-Suchfeld schreiben konntest, ja?
Und die Lösung soll sein, dass du einen Dialog machst und ihm das Textfeld übergibst?!
Wie übergibt man einem Dialog das Google-Feld...?


----------



## vladimir (26. Okt 2009)

Sorry ich habe es kommplett geändert! Die Applikation habe ich kommplet in Java geschrieben! Und kann die Textfelder übergeben!
Es funktioniert nur in meinen Javaprogramm!

Das mit der Suche und Übergabe könnte man über URL realisieren 
Kapitel18.4.2 Eine Suchmaschine ansprechen Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 18.4 Mit GET und POST Daten übergeben


----------

