2016-12-30 2 views
0

J'ai une application JavaFX simple et un MenuBar. J'ai mis quelques accélérateurs dans le fxml et ils fonctionnent bien, mais seules les clés principales sont montrées, pas les modificateurs.JavaFX - Afficher les modificateurs de l'accélérateur dans le menu

Par exemple:
(voir capture d'écran ci-dessous)
Enregistrer et Enregistrer sous ... les deux ont S comme clé principale, mais Enregistrer sous ... a un modificateur supplémentaire SHIFT_ANY. Dans l'application, les deux MenuItems ont seulement la lettre S à côté d'eux.

Encore une fois, les accélérateurs fonctionnent bien, ils ne sont pas affichés correctement.

Existe-t-il un moyen de forcer JavaFX à afficher également les modificateurs?

Merci

application screenshot

Voici le FXML du menu en question.

<Menu mnemonicParsing="false" text="File"> 
      <MenuItem mnemonicParsing="false" onAction="#newFile" text="New"> 
       <accelerator> 
        <KeyCodeCombination alt="UP" code="N" control="ANY" meta="UP" shift="UP" shortcut="UP"/> 
       </accelerator> 
      </MenuItem> 
      <MenuItem mnemonicParsing="false" onAction="#open" text="Open..."> 
       <accelerator> 
        <KeyCodeCombination alt="UP" code="O" control="ANY" meta="UP" shift="UP" shortcut="UP"/> 
       </accelerator> 
      </MenuItem> 
      <MenuItem mnemonicParsing="false" onAction="#save" text="Save"> 
       <accelerator> 
        <KeyCodeCombination alt="UP" code="S" control="ANY" meta="UP" shift="UP" shortcut="UP"/> 
       </accelerator> 
      </MenuItem> 
      <MenuItem mnemonicParsing="false" onAction="#saveAs" text="Save as..."> 
       <accelerator> 
        <KeyCodeCombination alt="UP" code="S" control="ANY" meta="UP" shift="ANY" shortcut="UP"/> 
       </accelerator> 
      </MenuItem> 
      <SeparatorMenuItem mnemonicParsing="false"/> 
      <MenuItem mnemonicParsing="false" onAction="#quit" text="Quit"> 
       <accelerator> 
        <KeyCodeCombination alt="UP" code="Q" control="ANY" meta="UP" shift="UP" shortcut="UP"/> 
       </accelerator> 
      </MenuItem> 
     </Menu> 

Répondre

0

J'ai trouvé le problème:
Dans le FXML j'avais mis CONTROL="ANY" au lieu de CONTROL="DOWN".
Je n'avais pas remarqué l'erreur :) Tout fonctionne bien maintenant.

Désolé de vous avoir dérangé.