JavaでJSplitPaneに背景色を設定する方法
JSplitPaneはJComponentクラスのサブクラスで、2つのコンポーネントを1つのペイン内に水平方向または垂直方向に並べて配置できるコンポーネントです。各コンポーネントの表示領域は、実行時にユーザーがドラッグして自由に調整できます。JSplitPaneの重要なメソッドには、remove()、removeAll()、resetToPreferredSizes()、setDividerLocation()などがあります。また、JSplitPaneはPropertyChangeListenerインターフェースを生成することも可能です。
JSplitPaneに背景色を設定する手順
JSplitPane自体に直接背景色を設定する代わりに、まず2つのパネル(JPanel)にそれぞれ異なる背景色を設定し、そのパネルを引数としてJSplitPaneのコンストラクタに渡すことで、左右(または上下)に異なる背景色を持つ分割ペインを作成できます。
具体的な手順は以下のとおりです。
- setBackground()メソッドを使って、1つ目のパネルに背景色を設定する
- 同様に、2つ目のパネルにも別の背景色を設定する
- 2つのパネルを引数としてJSplitPaneのコンストラクタに渡す
コード例
import javax.swing.*;
import java.awt.*;
public class JSplitPaneColorTest extends JFrame {
private JSplitPane jsp;
private JPanel panel1, panel2;
public JSplitPaneColorTest() {
setTitle("JSplitPane Example");
panel1 = new JPanel();
panel1.setBackground(Color.lightGray);
panel2 = new JPanel();
panel2.setBackground(Color.blue);
jsp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, panel1, panel2);
jsp.setDividerSize(10);
jsp.setResizeWeight(0.5);
add(jsp);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setSize(400, 275);
setVisible(true);
}
public static void main(String args[]) {
new JSplitPaneColorTest();
}
}
コードのポイント
panel1.setBackground(Color.lightGray):1つ目のパネルにライトグレーの背景色を設定しています。panel2.setBackground(Color.blue):2つ目のパネルに青色の背景色を設定しています。new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, panel1, panel2):2つのパネルを左右に並べた分割ペインを生成しています。VERTICAL_SPLITを指定すれば上下分割になります。setDividerSize(10):仕切り(ディバイダー)の幅を10ピクセルに設定しています。setResizeWeight(0.5):ウィンドウサイズ変更時に、余った領域を左右均等に配分するよう設定しています。
実行結果
このプログラムを実行すると、左側がライトグレー、右側が青色の背景を持つ分割ペインが表示され、中央の仕切りをドラッグして各パネルの表示領域を調整できます。
-
JavaのJCheckBoxに境界線(ボーダー)を設定する方法
JCheckBoxとは JCheckBoxはJToggleButtonを拡張したSwingコンポーネントの一つで、チェック済み(ON)と未チェック(OFF)の2つの状態を持つ選択肢を表します。複数のチェックボックスを配置した場合、それぞれが独立して動作するため、任意の組み合わせで同時に選択することが可能です。 境界線を設定する手順 JCheckBoxに境界線(ボーダー)を設定するには、次の2つのメソッドを使用します。 setBorder():コンポーネントに境界線を設定するメソッド。BorderFactoryクラスのファクトリメソッドを使って、さまざまな種類のボーダーを簡単に生成できます。
-
JavaのJToggleButton実装ガイド:ON/OFF切替ボタンの作り方を解説
JToggleButtonとは JToggleButtonはAbstractButtonを拡張したクラスで、クリックするたびにONとOFFが切り替わるトグルボタンを実現するために使用されます。通常のボタンと異なり、押した状態を保持できるのが特徴です。 JToggleButtonの主な特徴 最初に押されたときは押し込まれた状態のままとなり、もう一度押してはじめて元の状態(押されていない状態)に戻ります。 ボタンが押されるたびにActionEventが発生します。 さらに、JToggleButtonはItemEventも発生させることができます。このイベントは、選択状態という概念を持つコンポー