Ich möchte ein Accelerator auf ein JMenuItem setzen.Java - Beschleuniger zu einem JMenuItem hinzufügen
Im Moment bin ich Einstellung es wie dieses
openFile.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, ActionEvent.CTRL_MASK));
und es funktioniert, aber ich will nicht ctrl + o als Beschleuniger. Ich möchte 'space' als Beschleuniger haben, aber ich habe keine Methode gefunden, mit der ich einen KeyStroke erzeugen kann, der 'space' entspricht.
KeyStroke.getStroke()
entweder nimmt ein char oder (int, int). Ich habe auch keinen passenden Char gefunden.
Ich sagte, ich fand nicht 'char' entsprechend dem Raum. 'KeyEvent.VK_SPACE' ist ein int und es gibt keine Methode wie KeyStroke.getStroke (int), die nur int. Ich muss auch einen Modifikator liefern, den ich nicht will. –
Also lass mich das klarstellen. Wenn der Benutzer auf eine Schaltfläche klickt und "Tempo" drückt, um ihn zu aktivieren, möchten Sie die Menüaktion aufrufen? Lassen Sie mich "ungewöhnlichen und schwer zu erkennenden Accelerator" auf "nicht ausführbare GUI" upgraden. Mein Rat lautet: Wählen Sie einen brauchbaren Beschleunigerbrief. Was ist der Text im Menüpunkt? –
+1 für den Benutzer denken. :-) Mehr [hier] (http://stackoverflow.com/a/10161155/230513). – trashgod