java中的复选框数组

我想要有6个复选框,并在按下按钮后做一些事情你有一个例子吗?

还可以使用一系列复选框吗?

我想避免:

Checkbox cb1 = new Checkbox("A"); Checkbox cb2 = new Checkbox("B"); 

我做的事情如下:

  JPanel panel = new JPanel(); JFrame frame = new JFrame("the title"); final JTextArea txt = new JTextArea(20, 30); Button boton = new Button( "DO"); panel.add(txt); panel.add(boton); frame.add(panel); frame.add(panel); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(500, 500); frame.setVisible(true); boton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { txt.setText(""); /* How would be the logic of array of checkboxes if checbox[0] is active do action 0 if checbox[1] is active do action 1 if checbox[2] is active do action 2 if checbox[3] is active do action 3 if checbox[4] is active do action 4 if checbox[5] is active do action 5 if checbox[0] and checbox[1] is active do action 6 if checbox[0] and checbox[2] is active do action 7 if checbox[0] and checbox[3] is active do action 8 etc... */ } }); 

你可以这样做:

  List checkboxes = new ArrayList(); String labels[] = {"A", "B", "C", "D", "E", "F"}; for (int i = 0; i < labels.length; i++) { Checkbox checkbox = new Checkbox(labels[i]); checkboxes.add(checkbox); //for further use you add it to the list } 

然后List在ActionListener中使用它来引用复选框。 如果您愿意,也可以使用数组。

是的,有一个JCheckBox数组,例如:

 JCheckBox[] checkBoxes = {new JCheckBox("1"), new JCheckBox("2"), new JCheckBox("3"), new JCheckBox("4"), new JCheckBox("5"), new JCheckBox("6")}; 

要么

 JCheckBox[] checkBoxes = new JCheckBox[6]; 

然后你将不得不迭代checkBoxes.length并实例化它(如果你没有)并通过addItemListener()添加你的监听器,最后将每个复选框添加到你的JFrame

我希望这有帮助。