Mar*_*ark 4 java javafx event-handling fxml
我正在尝试学习事件处理,并使用类似于fxml按钮的示例:
<Button fx:id="button" onAction="#Handle">
Run Code Online (Sandbox Code Playgroud)
和我的控制器中的以下处理程序方法:
@FXML
private void Handle () {
btn_welcome.setOnMouseClicked((event) -> {
System.out.println("test");
});
Run Code Online (Sandbox Code Playgroud)
到目前为止这个工作正常.现在我想用鼠标处理输入按钮的事件.我试过了
@FXML
private void Handle () {
btn_welcome.setOnMouseEntered((event) -> {
System.out.println("test");
});
Run Code Online (Sandbox Code Playgroud)
但它似乎没有用.
你不应该把另一个监听器放到一个控件来让它执行函数.你做的是你每次调用handle方法时都会放置另一个监听器.
onMouseEntered="#methodToBeCalled"在fxml中使用
并在代码中创建该方法
@FXML
public void methodToBeCalled(){
System.out.println("mouse entered");
}
Run Code Online (Sandbox Code Playgroud)
就这么简单.将调用方法,你所要做的就是指定id /方法名,并使用注释.