gpt4 book ai didi

java - Java 中的事件处理程序

转载 作者:行者123 更新时间:2023-12-02 02:52:35 32 4
gpt4 key购买 nike

我有一个程序,我正在尝试使用 JavaFX 中的事件处理程序来使按钮执行操作,例如标记为“退出”的按钮用于结束程序。我认为我的代码是正确的,但它不起作用。知道该怎么做吗?代码如下:

import edu.seminolestate.studentanalysis.ActionEvent;
import edu.seminolestate.studentanalysis.EventHandler;
import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.FlowPane;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;

public class ProcessPayrollApplication extends Application {

HourlyEmployee hE = new HourlyEmployee(newName, hoursWorked, hourlyRate);

@Override
public void start(Stage primaryStage) throws Exception {

Label lblName = new Label("Employee name: ");
Label lblHours = new Label("Hours worked: ");
Label lblHourlyPay = new Label("Hourly pay rate: ");
Label lblGrossPay = new Label("Gross pay:" + hE.computeGrossPay());
Label lblTaxes = new Label("Taxes: " + hE.computeTaxAmount());
Label lblNetPay = new Label("Net pay: " + hE.computeNetPay());
TextField txtName = new TextField();
TextField txtHours = new TextField();
TextField txtPay = new TextField();
Button btnCalculate = new Button ("Calculate");
Button btnClear = new Button ("Clear");
Button btnExit = new Button ("Exit");

BorderPane bp = new BorderPane();
GridPane gp = new GridPane();
gp.setVgap(15);
gp.setHgap(15);
FlowPane fp = new FlowPane();
fp.setHgap(10);
fp.setAlignment(Pos.CENTER);

gp.add(lblName, 0, 0);
gp.add(lblHours, 0, 1);
gp.add(lblHourlyPay, 0, 2);
gp.add(lblGrossPay, 0, 3);
gp.add(lblTaxes, 0, 4);
gp.add(lblNetPay, 0, 5);
gp.add(txtName, 1, 0, 2, 1);
gp.add(txtHours, 1, 1, 2, 1);
gp.add(txtPay, 1, 2, 2, 1);

BorderPane.setAlignment(gp, Pos.CENTER);
bp.setCenter(gp);
BorderPane.setAlignment(fp, Pos.CENTER);
bp.setBottom(fp);

//Add event handlers

btnExit.setOnAction(new EventHandler<ActionEvent>() {

@Override
public void handle(ActionEvent event) {
System.exit(0);
}
});

Scene scene = new Scene(bp, 350, 250);
primaryStage.setScene(scene);
primaryStage.show();
primaryStage.setTitle("Payroll");
}

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

最佳答案

替换

import edu.seminolestate.studentanalysis.ActionEvent;
import edu.seminolestate.studentanalysis.EventHandler;

import javafx.event.ActionEvent;
import javafx.event.EventHandler;

然后不要忘记将按钮添加到 Pane 中。

关于java - Java 中的事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43578718/

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