Previous | Next | Trail Map | Creating a User Interface | GUI の構成ブロックであるコンポーネントを使用する


チェックボックスの使用方法

Checkbox(in the API reference documentation) クラスは、"オン" "オフ" の 2 つの状態のどちらかをもつボタン、すなわちチェックボックス を提供する。 ユーザがチェックボックスをクリックすると、チェックボックスの状態が変化し、アクションイベントが生成される。 ユーザから選択可能な項目グループを用意する方法としては、ほかに 選択肢リストメニューがある。

チェックボックスのグループの中で、同時に 1 つのチェックボックスしか "オン" にしたくない場合は、CheckboxGroup(in the API reference documentation) オブジェクトを追加して、チェ ックボックス群の状態を監視することができる。 (この UI 要素はラジオボタン とも呼ばれる。)

以下に、2 つの列のチェックボックスをもつアプレットを示す。 左側の 3 つは独立したチェックボックスであり、3 つ全部を選択することも可能で ある。 右側の 3 つは CheckboxGroup オブジェクトによって連繋されたチェックボックスで ある。ここでは、 CheckboxGroup により、同時には 1 つのチェックボックスしか選択できないように なっている。具体的には、チェックボックスグループは何も選択されていない状態で表示させることができるが、いったんユーザが 1 つのチェックボックスを選択すると、それ以降は常にただ 1 つのチェックボックスが選択されることになる 。

このアプレットが最初に現れるときの様子を示す。

次に、ユーザが Checkbox 1、Checkbox 2、Checkbox 2 (再度) をクリックし、その後 Checkbox 4、Checkbox 5、Checkbox 5 (再度) をクリックした後のアプレットの様子を示す。

プログラム全体も参照できる。 以下に、チェックボックスの両方のグループを作成するコードを示す。 2 番目のチェックボックスは、CheckbboxGroup によって制御された、相互排他のチェックボックスグループであることに注意する。

Panel p1, p2;
Checkbox cb1, cb2, cb3; //これらは独立したチェックボックスである。
Checkbox cb4, cb5, cb6; //これらはグループの一部のチェックボックスである。
CheckboxGroup cbg;

cb1 = new Checkbox();   //デフォルトの状態は "オフ" (false) である。
cb1.setLabel("Checkbox 1");
cb2 = new Checkbox("Checkbox 2");
cb3 = new Checkbox("Checkbox 3");
cb3.setState(true);     //状態を "オン" (true) に設定する。
. . .
cbg = new CheckboxGroup();
cb4 = new Checkbox("Checkbox 4", cbg, false); //初期状態: オフ (false)
cb5 = new Checkbox("Checkbox 5", cbg, false); //初期状態: オフ
cb6 = new Checkbox("Checkbox 6", cbg, false); //初期状態: オフ

上に示した Checkbox メソッドのほかに、Checkbox には便利なメソッドがあと 2 つある。 1 つは getCheckboxGroup()、もう 1 つはsetCheckboxGroup() である。 また、コード例で使用した単体の CheckboxGroup 構築子のほかに、CheckboxGroup は getCurrent()setCurrent() メソッドも定義する 。 これらのメソッドは現在選択されている Checkbox を (それぞれ) 調べるか、設定する。


Previous | Next | Trail Map | Creating a User Interface | GUI の構成ブロックであるコンポーネントを使用する