您好,我需要将用户和值传递给另一个控制器: 像这样的AdminController-> UserController。
在我的代码中,我在the #endif for this directive is missing[1,2]
unrecognized preprocessing directive[24,2]
expected a declaration[25,1]
中有此标签:
AdminController
这是在我的private TextField fusuario;
@FXML
private PasswordField fcontrasena;
String a;
String b;
public void captura() {
a=fusuario.getText().toString();
System.out.println("el usuario es x:"+a);
b=fcontrasena.getText().toString();
System.out.println("la contraseña es x:"+b);
}
public String setFusuario(String a) {
this.fusuario.setText(a);
return a;
}
public String setFcontrasena(String b) {
this.fcontrasena.setText(b);
return b;
}
中:
UserController
我如何传递这些价值观,帮助或方向?
答案 0 :(得分:0)
这很容易,您需要在FIRST Controller中声明这样的静态变量
static String alertTYPE;
然后在我们的错误检查代码中,为alertTYPE提供一个值
if(txtAmount.getLength() == 0){
alertTYPE = "1";
customAlert();
txtAmount.requestFocus();
return;
}
现在,我们仍在同一Controller类中调用customAlert()方法
她是customAlert方法代码
public void customAlert() throws IOException{
// This method displays the MODAL Alert alert.fxml and it is controlled by AlertController
// =========================================================================================
alertPane = FXMLLoader.load(getClass().getResource("alert.fxml"));// pane you are GOING TO
//Scene Sscene = new Scene(merrorPane, 600, 400);
// NO NEED TO RE-SIZE but this is code to change size
Scene Mscene = new Scene(alertPane);
Mstage = new Stage();
Mstage.initStyle(StageStyle.UNDECORATED);
Mstage.setResizable(false);
Mstage.initModality(Modality.APPLICATION_MODAL);
Mstage.setScene(Mscene);
Mstage.showAndWait();
}
在AlertController中,我们使用了alertTYPE值
@Override
public void initialize(URL url, ResourceBundle rb) {
if(alertTYPE.equals("1")){
lblMessage.setText("Enter "+type+" Amount");
}else if(alertTYPE.equals("2")){
您需要确保要导入的Controller像这样导入静态变量alertTYPE
import static checkbook.CBManagerController.alertTYPE;
这是一个很长的路要走,但我们希望您能想到这个主意
声明静态变量并给定值后,请务必谨慎,直到为变量赋予新值为止,或者对于String alertTYPE =“”,将其设置为无此值之前,请务必注意。强大的力量伴随着巨大的责任哈哈