2

我对编程非常陌生。我正在使用 JavaFX 和 NetBeans IDE 8.0.2 编写一个简单的数学程序。我正在尝试在同一阶段更改场景,并且我的代码有效,但是一旦场景发生更改,舞台将不会保持最大化。我已经尝试了我能想到的一切以使其保持最大化或将其恢复为最大化,即 stage.setMaximized(true); 切换下一个场景后,但没有任何代码起作用。我为我的问题创建了一个简单的例子。无论如何,有人对我有什么建议吗?谢谢你。

public class ProblemExample extends Application
{

    final double WIDTH = 600;
    final double HEIGHT = 600;

    Stage stage;
    Scene scene1, scene2;
    Pane pane1, pane2;

    public static void main(String[] args)
    {
        Application.launch(args);
    }

    @Override
    public void start(Stage primaryStage)
    {
        stage = primaryStage;
        pane1 = new Pane();
        pane2 = new Pane();

        getuiPane1();
        getuiPane2();

        scene1 = new Scene(pane1, WIDTH, HEIGHT);
        scene2 = new Scene(pane2, WIDTH, HEIGHT);
        stage.setTitle("Example");
        stage.setScene(scene1);
        stage.setMaximized(true);
        stage.show();
    } 

    public void getuiPane1()
    {
        Text nextText = new Text(300, 300, "Next >>");
        pane1.getChildren().add(nextText);

        nextText.setOnMouseClicked(e ->
        {
            if (e.getSource() == nextText)
            {
                stage.setScene(scene2);
            } else
            {
                stage.setScene(scene1);
            }
        }
        );
    }

    public void getuiPane2()
    {
        Text backText = new Text(300, 300, "<< Back");
        pane2.getChildren().add(backText);

        backText.setOnMouseClicked(e ->
        {
            if (e.getSource() == backText)
            {
                stage.setScene(scene1);
            } else
            {
                stage.setScene(scene2);
            }
        }
        );
    }
}
4

0 回答 0