gpt4 book ai didi

java - javafx 中按钮的操作事件不起作用

转载 作者:行者123 更新时间:2023-12-01 20:25:13 26 4
gpt4 key购买 nike

我正在 javafx 中制作一个应用程序,它使用库存子系统来允许用户添加到数据库或查找产品。我遇到的问题是当我单击下一个菜单时,例如,如果我选择查找项目,然后返回主菜单。 setonaction 方法停止工作。

private void mainMenu() {

pane.setBottom(null);
Label mainMenuTitle=new Label("Inventory Subsystem");

VBox titleBox=new VBox(mainMenuTitle);

pane.setTop(titleBox);

lookUpItem=new Button("Look Up Item");
enterItem=new Button("Enter Item");
deleteItem=new Button("Delete Item");


VBox mainMenuChoices=new VBox(20,lookUpItem,enterItem,deleteItem);
mainMenuChoices.setAlignment(Pos.CENTER);
pane.setCenter(mainMenuChoices);

上面是我的主菜单,其中有一些按钮可以让我选择下一个屏幕。

private void lookUpItemScreen() {

GridPane gridpane=new GridPane();
Button submit=new Button("Submit");
Button back=new Button("Back");
HBox submitbox=new HBox(5,submit,back);
submitbox.setAlignment(Pos.CENTER);
submitbox.setPadding(new Insets(0,0,10,0));

Label Title=new Label("Look Up Item");
VBox titleBox=new VBox(Title);

Label idLabel=new Label("Id: ");
Label productIdLabel=new Label("Product Id: ");
Label orLabel=new Label("or");

TextField id=new TextField();
TextField productID=new TextField();

gridpane.add(idLabel,0,1);
gridpane.add(id,3,1);
gridpane.add(orLabel,2,2);
gridpane.add(productIdLabel,0,3);
gridpane.add(productID,3,3);

gridpane.setAlignment(Pos.CENTER);
gridpane.setHgap(5);
gridpane.setVgap(10);

pane.setTop(titleBox);
pane.setCenter(gridpane);
pane.setBottom(submitbox);

submit.setOnAction(event -> {
//This is wher it looks up item in database and shows data
});

back.setOnAction(event -> {
mainMenu();
});


}

这些都在我的开始方法中,并且当lookUpItem.setOnAction(event-> {lookUpItemScreen()})时选择lookupitemscreen;

public void start(Stage primaryStage) {

mainMenu();

lookUpItem.setOnAction(event ->
{
lookUpItemScreen();
});

enterItem.setOnAction(event -> {
enterItemScreen();

});

deleteItem.setOnAction(event -> {
deleteItemScreen();
});

Scene supplierInfoSubsys=new Scene(pane, 640,400);
primaryStage.setScene(supplierInfoSubsys);
primaryStage.show();

}

最佳答案

我明白了。我必须输入:

lookUpItem.setOnAction(event ->
{
lookUpItemScreen();
});

enterItem.setOnAction(event -> {
enterItemScreen();

});

deleteItem.setOnAction(event -> {
deleteItemScreen();
});

进入主菜单方法而不是启动方法。

关于java - javafx 中按钮的操作事件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58919981/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com