2013-03-27 12 views
7

私は2番目のJavaFXプロジェクトを開始しました。Stageが最大化されているかどうかを知る必要があります。 Swingでは、これはかなり単純で、WindowListener/Eventを使用することで実現できます。しかし、JavaFXのJavadocで検索したところ、Stageの状態を聞く方法は見つかっていないようです。ステージのリスナー最小化、最大化など

これを行う方法はありますか? Stageが最小化場合はiconifiedプロパティを聞くことができます見つけるために

答えて

16

maximizedプロパティは、今後の8.0リリースで追加され

stage.iconifiedProperty().addListener(new ChangeListener<Boolean>() { 

    @Override 
    public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) { 
     System.out.println("minimized:" + t1.booleanValue()); 
    } 
}); 

が特派:

stage.maximizedProperty().addListener(new ChangeListener<Boolean>() { 

    @Override 
    public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) { 
     System.out.println("maximized:" + t1.booleanValue()); 
    } 
}); 

あなたはJDKの早期アクセスビルドをダウンロードすることができます8(FX8を含む):http://www.oracle.com/technetwork/java/javase/downloads/ea-jsp-142245.html

+0

ありがとう!あなたの意見では、JDK 8で私のアプリケーションを開発し、公式にリリースされたときに更新する価値がありますか? – mattbdean

+0

あなたの開発時間によって異なります。 JDK8はかなり近いですが、ユーザーはメジャーリリースに即座に更新することはできません。 –

+0

しかし、それらをControllerでどのように実装できますか?初期化メソッドでステージがまだヌルです –

関連する問題