チェックボックスが選択か非選択かを取得する
チェックボックスはクリックされるごとに選択と非選択を切り替えます。ここではチェックボックスが現在選択か非選択かを取得する方法について解説します。
(2022 年 04 月 11 日公開 / 2022 年 04 月 11 日更新)
目次
選択か非選択かを取得する
チェックボックスが選択か非選択かを取得するには JCheckBox クラスの親クラスである AbstractButton クラスで用意されている isSelected メソッドを使います。
public boolean isSelected()
ボタンの状態を返します。 トグル・ボタンが選択されている場合はtrue、そうでない 場合はfalseを返します。 戻り値: トグル・ボタンが選択されている場合はtrue、そうでない場合はfalse
メソッドを実行すると、対象のチェックボックスが選択の場合には true 、非選択の場合には false が返されます。
実際の使い方は次のようになります。
JCheckBox check = new JCheckBox("Travel"); boolean status = check.isSelected();
それでは簡単なサンプルプログラムを作って試してみます。テキストエディタで次のように記述したあと、 JSample13_1.java という名前で保存します。
import javax.swing.JFrame; import javax.swing.JCheckBox; import javax.swing.JButton; import javax.swing.JPanel; import javax.swing.JOptionPane; import java.awt.Container; import java.awt.BorderLayout; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; class JSample13_1 extends JFrame implements ActionListener{ JCheckBox[] check; public static void main(String args[]){ JSample13_1 frame = new JSample13_1("MyTitle"); frame.setVisible(true); } JSample13_1(String title){ setTitle(title); setBounds(100, 100, 600, 400); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); check = new JCheckBox[3]; check[0] = new JCheckBox("Travel"); check[1] = new JCheckBox("Movie"); check[2] = new JCheckBox("Sports"); JPanel p = new JPanel(); p.add(check[0]); p.add(check[1]); p.add(check[2]); JButton button = new JButton("Check"); button.addActionListener(this); JPanel button_panel = new JPanel(); button_panel.add(button); Container contentPane = getContentPane(); contentPane.add(p, BorderLayout.CENTER); contentPane.add(button_panel, BorderLayout.SOUTH); } public void actionPerformed(ActionEvent e){ StringBuilder sb = new StringBuilder(); for (int i = 0 ; i < check.length; i++){ sb.append(check[i].getText()); if (check[i].isSelected()){ sb.append("[Select]"); }else{ sb.append("[Not Select]"); } sb.append(" "); } JOptionPane.showMessageDialog(this, new String(sb)); } }
次のようにコンパイルを行います。
javac JSample13_1.java
コンパイルが終わりましたら実行します。
java JSample13_1
チェックボックスを 3 つ、ボタンを 1 つ追加しました。
チェックボックスをいくつか選択してから画面下のボタンをクリックしてください。
すべてのチェックボックスが選択か非選択かを取得してダイアログに表示します。
-- --
チェックボックスが現在選択か非選択かを取得する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。