gpt4 book ai didi

button - Javafx 从 TextField 获取输入

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

这是我当前的代码,它所做的只是为我制作的计算器设置一个 GUI 界面。我希望用户输入两个值,然后在按下“Sum”按钮时将这两个值相加并显示在“Sum:”TextField 中。我正在试验 JavaFX,非常感谢您的帮助。

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


public class SimpleCalculator extends Application
{
public void start(Stage myStage)
{

myStage.setTitle("Calculator");

GridPane rootNode= new GridPane();
rootNode.setPadding( new Insets( 15 ) );
rootNode.setHgap( 5 );
rootNode.setVgap( 5 );
rootNode.setAlignment( Pos.CENTER );

Scene myScene = new Scene( rootNode, 300, 200 );

rootNode.add( new Label("First Value:"), 0,0); rootNode.add(new TextField(), 1, 0);
rootNode.add( new Label ("Second Value:"), 0, 1); rootNode.add(new TextField(), 1, 1);
rootNode.add( new Label("Sum is:"), 0, 2); rootNode.add(new TextField(), 1, 2);
Button aButton = new Button("Calculate"); rootNode.add(aButton, 1, 3);
rootNode.setHalignment(aButton, HPos.LEFT);

myStage.setScene( myScene);

myStage.show();
}


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

}

最佳答案

这主要是一个 Java 编程问题。如果您想检索 TextField 的值,myTextField.getText() 方法就是您要查找的方法。

import javafx.application.Application;
import javafx.geometry.HPos;
import javafx.geometry.Insets;
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.GridPane;
import javafx.stage.Stage;

public class SimpleCalculator extends Application {
@Override
public void start(Stage myStage) {

myStage.setTitle("Calculator");

GridPane rootNode = new GridPane();
rootNode.setPadding(new Insets(15));
rootNode.setHgap(5);
rootNode.setVgap(5);
rootNode.setAlignment(Pos.CENTER);

Scene myScene = new Scene(rootNode, 300, 200);

rootNode.add(new Label("First Value:"), 0, 0);
TextField firstValue = new TextField();
rootNode.add(firstValue, 1, 0);
rootNode.add(new Label("Second Value:"), 0, 1);
TextField secondValue = new TextField();
rootNode.add(secondValue, 1, 1);
rootNode.add(new Label("Sum is:"), 0, 2);
Button aButton = new Button("Calculate");
rootNode.add(aButton, 1, 2);
GridPane.setHalignment(aButton, HPos.LEFT);
TextField result = new TextField();
result.setEditable(false);
rootNode.add(result, 1, 3);

aButton.setOnAction(e -> {
Integer value1 = Integer.valueOf(firstValue.getText());
Integer value2 = Integer.valueOf(secondValue.getText());
Integer r = value1 + value2;
result.setText(r.toString());
});

myStage.setScene(myScene);

myStage.show();
}

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

}

为了有一个更好的 UI,你可以允许用户只输入数字

关于button - Javafx 从 TextField 获取输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32219536/

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