Microsoft IME Editor, Funktionen triggern.

06/02/2015 12:14 Lee Ki-Hwan#1
Moin,
da unsere Software bald auch in Japan online geht, hab ich den Auftrag bekommen unsere Software dafür vorzubereiten, als Anfang habe ich mir jetzt, den Input ausgesucht.

Folgendes Scenario:
Wir haben einen Dialog wo wir sachen eintippen, aber nicht mit der Tastatur sondern über dem Display per Buttons.
Jetzt hat Japanisch ja irgendwie das Hiragana zudem wird dann ein passendes Kanji (oder sowas?) gesucht.
Nun der Microsoft IME Editor macht dies ja, wenn man das Japanische Sprachpacket installiert hat und was eintippt werden sachen vorgeschlagen, gibt es einen Weg sowas zu triggern?
Ich bin halt ein wenig limitiert da ich mit Java arbeite, daher wollte ich wissen ob sich jemand schonmal damit befasst.
06/04/2015 11:14 Lee Ki-Hwan#2
Also ich bin etwas weiter gekommen:
Ich benutze die Robot Klasse in Java und kann mit diesem Code z.B erfolgreich Sushi auf Japanisch schreiben. (Hiragana und dann per Leertaste Kanji auswählen.)

Code:
                 robot.keyPress(KeyEvent.VK_S);
                                           robot.keyPress(KeyEvent.VK_U);
                                           robot.keyPress(KeyEvent.VK_S);
                                           robot.keyPress(KeyEvent.VK_H);
                                           robot.keyPress(KeyEvent.VK_I);
                                           robot.keyPress(KeyEvent.VK_SPACE);
                                           robot.keyPress(KeyEvent.VK_SPACE);
Das ist ja alles schön, aber wenn ich jetzt meine Buttons mache und dann jeweils die Buchstaben zuweise,und Sushi eintippe krieg ich ein völlig anderen output.

Der relevante Code für den Actionlistener:

Code:
 else if(e.getActionCommand().equalsIgnoreCase("H")) // Ich habe 5 Buttons: btnS,btnU,btnH,btnI und btnSpace...
                       {
                           robot.keyPress(KeyEvent.VK_H);
                       }
Ich kann damit schreiben, aber ich kann nicht die Features vom IME benutzen.

Jemand eine Idee?

Erste Codeblock output:
寿司

Zweiter Codeblock output:
sうshい

Ersteres ist richtig...