前提・実現したいこと
javafxでレジ業務システムを作成していますが、画面間のデータ受け渡しを行いたいです。
1.ログイン画面でIDとパスワードを入力
2.データベースに問合せし認証できた場合、レジ画面に遷移。
3.レジ画面に現在ログインしている人の名前を表示させたい。
2.の段階でデータベースから名前は取得できるのですが、その情報をレジ画面に受け渡しする方法が分かりません。
ファイル
・main.java
・controller_register.java
・controller_rogin.java
・rogin.fxml(ログイン画面)
・register.fxml(レジ画面)
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
※import文は省略しています。
□main.java
public class register_main extends Application {
@Override public void start(Stage stage) throws Exception { stage.setTitle("販売業務"); Parent root = FXMLLoader.load(getClass().getResource("rogin.fxml")); Scene scene = new Scene(root); stage.setScene(scene); stage.show(); } //mainメソッド public static void main(String[] args) { Application.launch(args); }
}
□controller_register.java
public class Controller_register implements Initializable {
@FXML
public Label RoginNameId;
//初期化 @Override public void initialize(URL location, ResourceBundle resources) { }
}
□controller_rogin.java
public class Controller_rogin implements Initializable {
@FXML
private Label remarkId;
@FXML private Button roginId; @FXML private TextField employeeId; @FXML private PasswordField passwordId; @Override public void initialize(URL location, ResourceBundle resources) { } //ログインボタン @FXML public void ButtonRogin(ActionEvent event) throws IOException { UserCheck a = new UserCheck(); UserCheck roginInfo = a.authorityCheck("REGISTER", employeeId.getText(), passwordId.getText());//UseCheck型で認証情報と名前を受け渡し。 if(roginInfo.certification[0] == true && roginInfo.certification[1] == true) { //ログイン画面を閉じる Scene s = ((Node)event.getSource()).getScene(); Window window = s.getWindow(); window.hide(); //レジ画面の生成。 Parent root = FXMLLoader.load(getClass().getResource("register.fxml")); Scene scene = new Scene(root); Stage stage = new Stage(); stage.setScene(scene); stage.setTitle("販売業務"); stage.show(); } else if(roginInfo.certification[0] == true && roginInfo.certification[1] == false) { remarkId.setText("販売業務の権限がありません。"); } else { remarkId.setText("従業員IDとパスワードが間違っています。"); } }
}
試したこと
Controller_roginにsetter,getterを付けましたが、Controller_registerで参照しようとするとnullが返された。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
あなたの回答
tips
プレビュー