Swing/DividerLocation のバックアップ(No.7)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/DividerLocation へ行く。
- category: swing folder: DividerLocation title: JSplitPaneを等分割する tags: [JSplitPane, Divider] author: aterai pubdate: 2010-06-28T22:43:18+09:00 description: JSplitPaneのディバイダが中央にくるように設定します。 image:
概要
JSplitPane
のディバイダが中央にくるように設定します。
Screenshot
Advertisement
サンプルコード
EventQueue.invokeLater(new Runnable() {
@Override public void run() {
sp.setDividerLocation(0.5);
//sp.setResizeWeight(0.5);
}
});
View in GitHub: Java, Kotlin解説
上記のサンプルのJSplitPane
は、初期状態でそのディバイダが中央に配置されるよう、JSplitPane#setDividerLocation(.5);
を設定しています。
- 注:
JFrame#pack()
や、JFrame#setSize(int, int)
などが実行されて親コンポーネントのサイズが決定した後で、JSplitPane#setDividerLocation(...)
メソッドを実行しないと効果がない- ディバイダ自身の幅(
JSplitPane#getDividerSize()
)は含まれない - 内部では、切り捨てで
JSplitPane#setDividerLocation(int)
を使用: JSplitPaneのDividerの位置を最大化後に変更する
JSplitPane#setResizeWeight(double)
を使用し、JSplitPane
内に配置したコンポーネント(JScrollPane
)の余ったスペースの配分が同じになるようにして、ディバイダを中央に配置する方法もあります。