假设我们有一个复选框:

JCheckBox lang_1 = new JCheckBox("English");

此外,我们还有一个绑定到ActionListener的变量,因此在ActionEvent发生时它会更改。这是ActionEvent中的变量:

(String) abbr = JComboBox<ComboItem> comboBox.getSelectedIndex().toString();

现在,我的abbr等于1,所以我想lang_1.setEnabled(true);

有什么办法可以像我使用lang_1那样将“ lang_”与abbr混合使用?

(在jQuery中,您可以这样做:$("lang_"+abbr).doSomethingFunction();

最佳答案

最简单的方法是将JCheckBoxes放入arraylist并使用其索引进行调用:

List<JCheckBox> boxes = new ArrayList<JCheckBox> ();
boxes.add(new JCheckBox("English"));
// populate the list with the other check boxes

String abbr = JComboBox<ComboItem> comboBox.getSelectedIndex().toString();
int index = Integer.parseInt(abbr);
boxes.get(index).setEnabled(true);


您需要在范围,数字解析等方面添加相关的错误处理代码。

关于java - 有什么方法可以在对象名称中使用变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12596180/

10-12 04:29