7

良い一日!

初めてのアプリケーション JavaFx を試してみました。フルスクリーンモードを設定してボタンを押すと、ダイアログが表示されます。ダイアログが表示されると、メイン ウィンドウがフルスクリーン表示されなくなります。

コード:

public class Test1 extends Application {

    @Override
    public void start(final Stage primaryStage) {
        Button btn = new Button();
        btn.setText("Say 'Hello World'");
        btn.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent event) {
                Stage dialogStage = new Stage(StageStyle.UTILITY);
                dialogStage.initModality(Modality.APPLICATION_MODAL);
                dialogStage.setScene(new Scene(VBoxBuilder.create().
                    children(new Text("Hi"), new Button("Ok.")).
                    alignment(Pos.CENTER).padding(new Insets(5)).build()));
                dialogStage.show();

                System.out.println(dialogStage.getOwner()==primaryStage.getOwner());
            }
        });

        StackPane root = new StackPane();
        root.getChildren().add(btn);

        Rectangle2D r = Screen.getPrimary().getBounds();
        Scene scene = new Scene(root, r.getWidth(), r.getHeight());

        primaryStage.setTitle("Hello World!");
        primaryStage.setScene(scene);
        primaryStage.setFullScreen(true);
        primaryStage.show();
    }

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

OS: Windows7

4

1 に答える 1

6

必要がある

dialogStage.initOwner(primaryStage);
于 2012-09-05T08:04:37.960 に答える