gpt4 book ai didi

javafx如何将变量值从一个 Controller 传输到另一个 Controller

转载 作者:太空宇宙 更新时间:2023-11-04 06:44:32 25 4
gpt4 key购买 nike

我是javafx新手,我想转移variable values从一个 Controller 到另一个 Controller ,我不知道该怎么做。所以请帮助我。

例如:

我想显示 first login window 中的用户名至second dashboard window那么我应该怎么做才能将 userid 保存在一个变量中并将其发送到第二个窗口并显示在 label 中.

代码测试:

import java.net.URL;
import java.util.ResourceBundle;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.layout.AnchorPane;

/**
* FXML Controller class
*
* @author wabcon
*/
public class AdmissionController implements Initializable {

int userid=0;
/**
* Initializes the controller class.
*/
@Override
public void initialize(URL url, ResourceBundle rb) {
userid=10001;

}

}

我怎样才能发送这个userid到下一个窗口 Controller 。请帮我。谢谢。

最佳答案

我假设您正在为自定义组件执行此操作。

因此,您为自定义组件创建一个类并将该类设置为 Controller :

public class CustomControl extends AnchorPane implements Initializable {
String customId;

public CustomControl() {
//if you want to set a FXML
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/res/customControl.fxml"));
//Defines this class as the controller
fxmlLoader.setRoot(this);
//this.getStylesheets().add("/res/style.css"); <- if you want to set a css
fxmlLoader.setController(this);
try {
fxmlLoader.load();
} catch (IOException exception) {
throw new RuntimeException(exception);
}

}
public String getCustomId() {
return customId;
}
public void setCustomId(String customId) {
return this.customId = customId;
}
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
//Initializes the controller
}
}

在你的主 Controller 上:

CustomControl c = new CustomControl();
c.setCustomId("StackOverflow");

关于javafx如何将变量值从一个 Controller 传输到另一个 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24190913/

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