パネルの実際のサイズを取得する必要があるため、jpanelがディスプレイに表示されている場合に呼び出されるメソッドを検索します。
助言がありますか?
コンポーネントリスナーをJPanelに追加してみましたか?それは私がcomponentShown(...)
メソッドのコードから始めるところです。setVisible(true)
これが機能するためには、ディスプレイに追加した後、JPanelを呼び出す必要があると思います。
pack()
もう1つのオプションは、を呼び出した後、またはsetVisible(true)
GUIでそのサイズを照会することです。
編集
あなたの状態:
パネルをGUIデザイナに追加しました。ウィンドウがポップアップしたら、jpanelの実際のサイズを変更できるので、実際のサイズにします。
「ウィンドウがポップアップしたとき」にウィンドウが保持するコンポーネントのサイズを知りたい場合は、WindowListenerwindowOpened(...)
をウィンドウに追加し、メソッドからコンポーネントのサイズを確認します。
編集2
次に、次のように述べます。
実際のサイズになったら、このパネルのサイズに関連していくつかのサブパネルを追加します。たとえば、size / 6で、サブパネルのサイズの高さはsize/6になります。
1つの解決策:サイズを設定するのではなく、レイアウトマネージャーの適切な組み合わせを使用して、ルールに基づいて適切なサイズを設定できるようにすることをお勧めします。
関数 setVisible(true); を使用して可視性を設定します。