java - 如何将值插入到Java对象中

标签 java javafx-2 javafx javafx-8

我有一个 Java 对象,我想在其中插入值。例如我想这样做:

private UserData ud = new UserData();

public class UserData
{
    private String hostName;
    private String userName;
    private String passwd;

    public UserData(String hostName, String userName, String passwd)
    {
        this.hostName = hostName;
        this.userName = userName;
        this.passwd = passwd;
    }

    private UserData()
    {
    }

    public String getHostName()
    {
        return hostName;
    }

    public void setHostName(String hostName)
    {
        this.hostName = hostName;
    }

    public String getUserName()
    {
        return userName;
    }

    public void setUserName(String userName)
    {
        this.userName = userName;
    }

    public String getPasswd()
    {
        return passwd;
    }

    public void setPasswd(String passwd)
    {
        this.passwd = passwd;
    }
}

我有这个简单的文本字段

TextField textFieldsz = new TextField();
grid.add(textFieldsz, 1, 0);

Text chartTitle = new Text("User name:");
grid.add(chartTitle, 0, 1);

TextField textFieldds = new TextField();
grid.add(textFieldds, 1, 1);

Text chartcTisstle = new Text("Password:");
grid.add(chartcTisstle, 0, 2);

PasswordField textFieeds = new PasswordField();
grid.add(textFieeds, 1, 2);

我有一个用于登录的按钮

btnLogin.setOnAction(new EventHandler<ActionEvent>()
{
    @Override
    public void handle(ActionEvent event)
    {

    }
});

我有如何使业务逻辑化的基本知识。您能告诉我在 JavaFX 中如何将 TextFields 中的值插入到 Java 对象中并执行某些操作吗?

最佳答案

这是解决您的问题的一种方法。

final UserData ud = new UserData();     
GridPane grid = new GridPane();     
final TextField textFieldsz = new TextField();
grid.add(textFieldsz, 1, 0);
Text chartTitle = new Text("User name:");
grid.add(chartTitle, 0, 1);
final TextField textFieldds = new TextField();
grid.add(textFieldds, 1, 1);
Text chartcTisstle = new Text("Password:");
grid.add(chartcTisstle, 0, 2);
final PasswordField textFieeds = new PasswordField();
grid.add(textFieeds, 1, 2)      
Scene sc = new Scene(grid,400,400);     
Button btn = new Button("PRESS");       
btn.setOnAction(new EventHandler<ActionEvent>() {

    @Override
    public void handle(ActionEvent arg0) {
        ud.setHostName(textFieldsz.getText());
        ud.setUserName(textFieldds.getText());
        ud.setPasswd(textFieeds.getText());
        arg0.consume();

    }
});

如您所见,您必须将 final 关键字添加到您在内部匿名类(按钮的事件处理程序)中使用的对象。

另一种方法是使用JavaFX-Bindings ,但我认为绑定(bind)不适合登录屏幕。

关于java - 如何将值插入到Java对象中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20202956/

相关文章:

java - 添加具有多个 Arrylists 的类对象

java - 关闭 JavaFX Stage 后如何释放内存?

java - 如何通过java更改任务栏图像?

java - 如何以编程方式旋转背景?

JavaFX TableView 使用分页过滤(一起)

javafx - 单击时更改 javafx 按钮颜色?

Java长正则表达式

java - 我无法运行 C3P0ConnectionProvider

java - 构建中的 Android Studio 错误 - 原因 : startElement. getAttributeByName(QName ("name")) 不能为空

javafx - 为什么 3D 模型在子场景中的渲染与场景中的渲染不同