2017-09-24 6 views
0

Deux boutons sont dans la VBox. Si vous cliquez sur le premier bouton, puis appuyez sur "TAB", le cadre de mise au point passera au deuxième bouton. Donc ma question est, si je veux utiliser le "TAB" pour l'autre fonction, comment puis-je changer ou annuler ou empêcher la fonction par défaut de "TAB" dans JavaFX?JavaFX Comment changer la fonction par défaut de la touche de raccourci?

Button btn1 = new Button("First Button"); 
Button btn2 = new Button("Second Button"); 
VBox root = new VBox(); 
root.getChildren().addAll(btn1,btn2); 

Répondre

0

Vous devez utiliser l'une des méthodes setOnKeyPressed/Released/Typed. Et puis fais ta magie. Par exemple, il suffit de le consommer, pour empêcher la commutation entre les boutons.

btn1.setOnKeyPressed(e->{ 
     if (e.getCode() == KeyCode.TAB) { 
      e.consume(); 
     } 
    });