JSplitPane を使用する Swing アプリケーションがあり、ウィンドウが最大化または復元されたらすぐに JSplitPane の幅を取得したいと考えています。しかし、正しい値を取得できないようです。常に JSplitPane の以前の幅を返します。ウィンドウの状態が変更された後の幅ではありません。
NORMAL と MAXIMIZED_BOTHを使用して検証する必要があることはわかっていますが、evt.getNewState()
ここでは問題ありません。
addWindowStateListener(new java.awt.event.WindowStateListener() {
public void windowStateChanged(java.awt.event.WindowEvent evt) {
System.out.println(jsp.getWidth());
}
});
これは1812
、復元され、1120
最大化された場合に出力されます。他のいくつかのコンポーネントでもこれを試しましたが、同じ結果になりました。どうすればこの問題を克服できますか?