gpt4 book ai didi

JavaFX 按钮监听器不工作

转载 作者:行者123 更新时间:2023-12-01 10:09:12 24 4
gpt4 key购买 nike

我正在创建一个简单的计算器,它将在文本字段中输入的两个值相加,然后当您按下按钮时在第三个文本字段中显示总和。然而,当我按下按钮时没有任何反应,我不知道出了什么问题。我没有收到任何错误消息,程序编译按钮似乎没有执行任何操作。

import javafx.application.*;
import javafx.geometry.*;
import javafx.scene.*;
import javafx.stage.*;
import javafx.scene.layout.*;
import javafx.scene.control.*;
import javafx.event.*;


public class Calculator extends Application{

private TextField sumField;
private TextField firstVField;
private TextField secondVField;

public void start(Stage myStage){
myStage.setTitle("Simple Calculator");

GridPane rootNode = new GridPane();
rootNode.setPadding(new Insets(30));
rootNode.setHgap(5);
rootNode.setVgap(5);

Scene myScene = new Scene(rootNode, 350,250);

Label firstVLabel = new Label("First Value:");
Label secondVLabel = new Label("Second Value:");
Label sumLabel = new Label("Sum:");


TextField firstVField = new TextField();
TextField secondVField = new TextField();
TextField sumField = new TextField();


sumField.setEditable(false);

Button calculate = new Button("Calculate");

rootNode.add(firstVLabel, 0, 0);
rootNode.add(firstVField, 1, 0);
rootNode.add(secondVLabel, 0, 1);
rootNode.add(secondVField, 1, 1);
rootNode.add(sumLabel, 0, 2);
rootNode.add(sumField, 1, 2);
rootNode.add(calculate, 1, 3);

myStage.setScene(myScene);
myStage.setResizable(false);
myStage.show();

}

class ButtonHandler implements EventHandler<ActionEvent>{

public void handle(ActionEvent e) {
int sum = (int)firstVField.getText() + (int)secondVField.getText();
sumField.setText(Integer.toString(sum));

}
}

public static void main( String [] args){
launch(args);
}

}

最佳答案

您忘记将 ButtonHandler 连接到 calculate 按钮

calculate.setOnAction(new ButtonHandler());

关于JavaFX 按钮监听器不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36253217/

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