Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaでのJListの選択モードの種類はいくつですか?


JList JComponentを拡張できるコンポーネントです ユーザーが1つ以上のアイテムを選択できるようにするオブジェクトのリストを表示するために使用されるクラス。

JavaでのJListの選択モードには3つのタイプがあります

  • ListSelectionModel.SINGLE_SELECTION :一度に選択できるリストインデックスは1つだけです。
  • ListSelectionModel.SINGLE_INTERVAL_SELECTION :一度に選択できる連続間隔は1つだけです。
  • ListSelectionModel.MULTIPLE_INTERVAL_SELECTION: このモードでは、何を選択できるかについての制限はありません。これはデフォルトのモードです。

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JListSelectionModeTest extends JFrame implements ActionListener {
   private JList list;
   private DefaultListModel listModel;
   public JListSelectionModeTest() {
      setTitle("JListSelectionMode Test");
      setLayout(new BorderLayout());
      listModel = new DefaultListModel();
      for (int i = 1; i < 10; i++) {
         listModel.addElement("list item #" + i);
      }
      list = new JList(listModel);
      add(new JScrollPane(list), BorderLayout.CENTER);
      JPanel panel = new JPanel(new GridLayout(3, 1));
      JRadioButton rb1 = new JRadioButton("SINGLE_SELECTION");
      rb1.addActionListener(this);
      JRadioButton rb2 = new JRadioButton("SINGLE_INTERVAL_SELECTION");
      rb2.addActionListener(this);
      JRadioButton rb3 = new JRadioButton("MULTIPLE_INTERVAL_SELECTION");
      rb3.addActionListener(this);
      ButtonGroup bg = new ButtonGroup();
      bg.add(rb1);
      bg.add(rb2);
      bg.add(rb3);
      panel.add(rb1);
      panel.add(rb2);
      panel.add(rb3);
      add(panel, BorderLayout.NORTH);
      setSize(350, 275);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public void actionPerformed(ActionEvent ae) {
      if (ae.getActionCommand().equals("SINGLE_SELECTION"))
         list.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
      else if (ae.getActionCommand().equals("SINGLE_INTERVAL_SELECTION"))
         list.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
      else if (ae.getActionCommand().equals("MULTIPLE_INTERVAL_SELECTION"))
         list.getSelectionModel().setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
   }
   public static void main(String[] args) {
      new JListSelectionModeTest();
   }
}

出力

JavaでのJListの選択モードの種類はいくつですか?


  1. ダブルクリックをキャッチして、JavaでJListの主要なイベントを入力するにはどうすればよいですか?

    JList JComponentを拡張できます ユーザーが単一または複数の選択肢を選択できるようにするクラス。 JList ListSelectiionListenerを生成できます インターフェースであり、1つの抽象メソッド valueChanged()。が含まれています JList MouseListenerを生成することもできます ダブルクリックイベントiをキャッチするためのインターフェース nリストを作成し、 KeyListenerを生成します エンターキーイベントをキャッチするためのインターフェース 。 例 import java.awt.*; import java

  2. Javaでは何種類のJDialogボックスを作成できますか?

    JDialog ダイアログのサブクラスです クラスであり、ウィンドウの右上隅にある最小化ボタンと最大化ボタンは保持されません。 Javaで2種類のJDialogボックスを作成できます モーダルダイアログ 非モーダルダイアログ モーダルJDialog Javaでは、モーダル ダイアログ ウィンドウがアクティブであり、すべてのユーザー入力がウィンドウに転送され、このモデルダイアログが閉じられるまでアプリケーションの他の部分にアクセスできません。 非モーダルJDialog Javaで、非モーダルダイアログの場合 ウィンドウがアクティブで、アプリケーションの他の部分は通常どおりアクセス可