フレームの幅に基づいて 3 つのパネルを配置するキャラクター シート プログラムを作成しようとしています。フレームがあまり広くない場合はパネルを縦に配置したいのですが、ユーザーがフレームを広くすることを選択した場合は、パネルを横に配置したいと思います。
3つのパネルが配置されているscrollPanelもあるので、scrollPanelはscrollPaneに追加されています。
イベントリスナーが機能するという投稿を見たことがありますが、これらのほとんどはボタン用であり、レイアウトが変更される前にフレームサイズが特定のしきい値を超える必要があります。html を推奨する他の投稿を見ましたが、現時点では必要ではありません。
この図では、3 つのパネルが縦に並べられており、スクロールすることができます。
scrollPanel.add(leftPanel); //this is the yellow panel that is being added
scrollPanel.add(centerPanel); //this one is farther down
scrollPanel.add(rightPanel); //even farther down
scrollPanel.setBackground(Color.CYAN);
scrollPanel.setLayout(new GridLayout(0, 1)); //so here I would like to have an if statement or event swap the 0 and the 1.
概要:
Frame のサイズに基づいて GridLayout を動的に変更できますか?
フレーム サイズの変更を監視するにはどうすればよいですか? イベント?if ステートメント?
パネルが垂直か水平かに基づいて、水平スクロール バーと垂直スクロール バーが表示されないように設定して、ScrollPane で同じことを行うことはできますか?