2016-07-06 3 views
2

私はJavaFxアプリケーションを作成しており、フルスクリーンを強制したいと思います。私は JavaFxのLeaveFullscreenをキャッチ

mainView.getLayout().setOnKeyPressed(event -> { 
     if(event.getCode() == KeyCode.ESCAPE){ 
     mainView.getStage().setFullScreen(true); 
     } 
    }); 

mainView.getLayout()

StackPane

を返しますが、それはそれは自動的にフルスクリーンに戻りフルスクリーンを離れたときには、きれいな解決策ではありませんを試してみました。しかし、私はLeaveFullScreenをキャッチして、離れる代わりに何もせずに元に戻す必要があります。

+0

キーの組み合わせは、私が試した、exist.Write stagename.estExitFullScreenKeyCombination(KeyCombination.none)that.Easyのようなものが – GOXR3PLUS

+1

感謝を見つけることがないフルスクリーンを強制的に存在しますしかし、エスケープキーはまだ機能していますが、どうすればそれを無効にできますか? –

+0

私はそう思うはずです。私はコンピュータでsryをチェックしていません。setFullScreenExitMessage()をnullに設定します。このメソッドを検索すると、このような名前になります。 – GOXR3PLUS

答えて

0

あなたはStageフルスクリーンプロパティにChangeListener を追加することができます。

primaryStage.fullScreenProperty().addListener(new ChangeListener<Boolean>() { 

     @Override 
     public void changed(ObservableValue<? extends Boolean> observable, 
       Boolean oldValue, Boolean newValue) { 
      if(newValue != null && !newValue.booleanValue()) 
       primaryStage.setFullScreen(true); 
     } 
    }); 

より、この質問here

1

fullScreenExitKey property of the StageKeyCombination.NO_MATCHに設定することができますを見ているため。これにより、キーがフルスクリーンモードから抜けることが防止されます。 "stage.setFullScreenExitKeyCombination(KeyCombination.NO_MATCHを);"

stage.setFullScreenExitKeyCombination(KeyCombination.NO_MATCH); 
stage.setFullScreen(true); 
関連する問題