0
У меня есть основной класс, где начался первый этап, и я хочу запустить на button_info еще один этап, код которого я написал в другой класс. Я не использую FXML, просто классический JavaFx, даже если FMXL лучше. Есть идеи ? Благодарю.Переключение между классами
MainClass
public class StartClass extends Application {
@Override
public void start(Stage primaryStage) {
/*******************************
* Incialization of variables *
*******************************/
final Group group = new Group();
final TransactionWindows tw = new TransactionWindows();
final InfoWindow iw = new InfoWindow();
/*******************************
* Button *
*******************************/
final Button button_zacit = new Button();
button_zacit.setText("Začít");
button_zacit. setPrefHeight(30);
button_zacit.setPrefWidth(103);
button_zacit.setLayoutX(255);
button_zacit.setLayoutY(150);
group.getChildren().add(button_zacit);
final Button button_info = new Button();
button_info.setText("Info");
button_info. setPrefHeight(30);
button_info.setPrefWidth(103);
button_info.setLayoutX(255);
button_info.setLayoutY(217);
group.getChildren().add(button_info);
final Button button_konec = new Button();
button_konec.setText("Konec");
button_konec. setPrefHeight(30);
button_konec.setPrefWidth(103);
button_konec.setLayoutX(255);
button_konec.setLayoutY(285);
group.getChildren().add(button_konec);
/*******************************
* Text *
*******************************/
final Text text_uvod = new Text();
text_uvod.setText("Vítejte ve hře Guess Word");
text_uvod.setLayoutX(78);
text_uvod.setLayoutY(57);
text_uvod.setTextAlignment(TextAlignment.CENTER);
text_uvod.setFont(new Font(30));
group.getChildren().add(text_uvod);
/*******************************
* Methods of Button *
*******************************/
button_konec.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent t) {
Platform.exit();
}
});
button_info.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent t) {
InfoWindow.launch();
}
});
Pane root = new Pane();
root.getChildren().addAll(group);
Scene scene = new Scene(root, 600, 400);
// scene.getStylesheets().addAll("mainpackage/GW.css");
primaryStage.setTitle("Hello World!");
primaryStage.setScene(scene);
primaryStage.show();
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
launch(args);
}
}
класс, где еще один этап:
ublic class InfoWindow extends Application{
@Override
public void start(Stage infoStage) throws Exception {
/********************************
* Inicializaion of variables *
*******************************/
Group groupInfo = new Group();
/*******************************
* TextArea *
*******************************/
TextArea textarea_info = new TextArea();
textarea_info.setPrefHeight(241);
textarea_info.setPrefWidth(454);
textarea_info.setLayoutX(73);
textarea_info.setLayoutY(35);
textarea_info.setText("Text se bude brát ze složky");
textarea_info.setEditable(false);
groupInfo.getChildren().add(textarea_info);
Pane root = new Pane();
root.getChildren().addAll(groupInfo);
Scene scene = new Scene(root, 600, 400);
infoStage.setScene(scene);
infoStage.show();
}
}
Просьба привести пример кода. Благодаря – user3770144
'общественный класс InfoWindow расширяет Stage { общественного InfoWindow() { // Инициализировать сцену (тело вашего метода пуска идет здесь, без шоу() } }' Использование: 'InfoWindow InfoWindow = новый InfoWindow(); ' Если вы хотите его показать: ' infoWindow.show(); ' – galovics