如何使用Java7将新实例变量传递给JavaFX控制器
为了简单起见,我有一个JavaFX应用程序,它允许您从2个不同的类设置/获取名称,并在其场景标签上显示获取名称。这样做没有问题,但我不能做的是如何将新实例变量从另一个类“AnotherClass”传递到JavaFX FXML控制器如何使用Java7将新实例变量传递给JavaFX控制器,java,javafx,Java,Javafx,为了简单起见,我有一个JavaFX应用程序,它允许您从2个不同的类设置/获取名称,并在其场景标签上显示获取名称。这样做没有问题,但我不能做的是如何将新实例变量从另一个类“AnotherClass”传递到JavaFX FXML控制器 public class AnotherClass { FXMLDocumentController newInstance = new FXMLDocumentController(); } 在FXML控制器中,我执行了以下操作来引用新的实例变量 public
public class AnotherClass {
FXMLDocumentController newInstance = new FXMLDocumentController();
}
在FXML控制器中,我执行了以下操作来引用新的实例变量
public class FXMLDocumentController implements Initializable {
@FXML
private Label label;
@FXML
private void handleButtonAction(ActionEvent event) {
System.out.println("Hello ");
Variable var = new Variable();
BaseLine base = new BaseLine();
var.setName("Rob");
base.printout(var);
label.setText(base.printout(var));
label.setText(label.getText() + base.set(var));
}
@Override
public void initialize(URL url, ResourceBundle rb) {
// TODO
}
}
正如您在FXML控制器中所看到的,我已经创建了下面两个类的两个实例来处理set/get名称
public class BaseLine {
String printout(Variable sg){
System.out.println("My Name is: "+ sg.getName());
return sg.getName();
}
String set(Variable sg){
sg.setName("Bob");
return sg.getName();
}
public class Variable {
String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
现在是我的问题,来自另一个类,如何将新实例传递给JavaFXML控制器
public class AnotherClass {
FXMLDocumentController newInstance = new FXMLDocumentController();
}
我如何在FXMLDocumentController中接受这个实例的新创建?重构
FXMLDocumentController
,以便它将var
存储为可变字段,将标签设置代码重构为一个方法,并将以下内容添加到另一个类中的某个地方:
Variable variable = new Variable();
variable.setName("Test");
this.newInstance.setVariable(variable);
谢谢,但我对JavaFX世界还不熟悉。您能否提供更多关于如何重构FXMLDocumentController的细节,以便它将var存储为可变字段。