JavaFX 菜单项名称
JavaFX Menu Item name
我上网查了一下,没找到。当有人点击时如何获取点击的菜单项的名称it.I 想根据点击的菜单项改变场景但我不想创建8种不同的方法。如果我可以获得单击的菜单项的名称,我可以创建 1 个方法,将该名称作为参数并启动 FXML 加载程序并更改场景
如此处所述:https://www.programcreek.com/java-api-examples/?class=javafx.scene.input.MouseEvent&method=getSource
你可以这样做:
private void handleLabel(MouseEvent event) {
Node label = (Node) event.getSource();
System.out.println("Mouse click on label: " + label.getId());
}
在初始化方法中为 MenuItem(s) onAction 事件注册一个内联侦听器。
for (MenuItem item : menu.items()) {
item.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
processCategory(item.getText()); // this would do your thing you want to do.
event.consume();
});
}
我上网查了一下,没找到。当有人点击时如何获取点击的菜单项的名称it.I 想根据点击的菜单项改变场景但我不想创建8种不同的方法。如果我可以获得单击的菜单项的名称,我可以创建 1 个方法,将该名称作为参数并启动 FXML 加载程序并更改场景
如此处所述:https://www.programcreek.com/java-api-examples/?class=javafx.scene.input.MouseEvent&method=getSource
你可以这样做:
private void handleLabel(MouseEvent event) {
Node label = (Node) event.getSource();
System.out.println("Mouse click on label: " + label.getId());
}
在初始化方法中为 MenuItem(s) onAction 事件注册一个内联侦听器。
for (MenuItem item : menu.items()) {
item.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
processCategory(item.getText()); // this would do your thing you want to do.
event.consume();
});
}