我正在尝试阻止箭头键浏览示例中的控件。我不确定该怎么做。这是我创建的示例:
import javafx.application.Application; import javafx.event.EventHandler; import javafx.scene.Group; import javafx.scene.Node; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.input.KeyCode; import javafx.scene.input.KeyEvent; import javafx.scene.layout.FlowPane; import javafx.scene.shape.Rectangle; import javafx.stage.Stage; public class KeyEventTest extends Application{ private EventHandler<KeyEvent> keyEventHandler; @Override public void start(Stage stage) throws Exception { // TODO Auto-generated method stub Group root = new Group(); FlowPane f = new FlowPane(); Button r = new Button("button1"); Button r2 = new Button("button1"); Button r3 = new Button("button1"); f.getChildren().addAll(r,r2,r3); root.getChildren().add(f); Scene scene = new Scene(root,600,600); keyEventHandler = new EventHandler<KeyEvent>() { public void handle(final KeyEvent keyEvent) { if (keyEvent.getCode() == KeyCode.LEFT || keyEvent.getCode() == KeyCode.UP) { System.out.println("arrow keys"); }else{ System.out.println(keyEvent); } } }; stage.addEventHandler(KeyEvent.KEY_PRESSED, keyEventHandler); stage.setScene(scene); stage.show(); } public static void main(String args[]){ Application.launch(args); } }
任何帮助将不胜感激谢谢
我正在尝试阻止箭头键浏览示例中的控件。我不确定该怎么做。这是我创建的示例:import javafx.application.Application; ...
我有一个类似的问题,发现了一个简单的解决方法。由于控件导航到Part会在自我实现的EventHandler之后触发,因此您可以通过调用
首先,关于这个问题的答案类似于关于这个问题的答案:JavaFX: How to change the focus traversal policy?