2 + 3 + "bc"
我对此代码的问题是它作为值的一部分返回," [L] java,labg.String ....."。我认为这与数组被调用的事实有关(作为字符串而不是真正的数组)。
我已经尝试了所有可能的方法,我可以想到摆脱那个随机条目,我已经尝试过真正的数组,列表,没有任何作用。如果我删除了数组..
public static JComboBox[] ComboBox = new JComboBox[100];
String Array[] = { "Item1", "Item2", "Item3", "Item4" };
final DefaultComboBoxModel model = new DefaultComboBoxModel(Array); // this should assign the array and it does
ComboBox[1] = new JComboBox(model); // added this as the above also didn't help
ComboBox[1].setModel(model); // added this in because the above line didn't help
然后自然地调用ComboBox,它仍然存在,我无法弄清楚原因。
更新于18/09/17 @ 7.17am
对不起,我没有真正问过这个问题,现在已经很晚了,我实际上在VBA中经历的并不是Java(我还在学习原谅我)。< / p>
是的,我想改进我的语法方法,所以请随时查看我的代码。
好的,首先,这是程序的设计。该应用程序的目的是帮助在工作的不同方面捕获数据,因为他们拥有每次执行操作时必须填写的模板(如更改地址,离开国家等)。
他们选择问题集(示例地址更改),然后填写所需的模板填充到用户表单中。
我遇到的问题是,当添加动态组合框作为数组时,组合框显示一个奇怪的项目([L] java,labg.String .....),即使组合框的所有元素都是空(或被迫空)。
我想要的只是能够以数组格式生成动态组合框,并能够检索用户选择的值。
在为你们编写测试代码时,你可以编译....它只是工作正常...所以我认为我需要重新评估我的程序的其余部分是如何设计的。
以下是供您参考的代码,如果您可以帮我弄清楚如何通过非静态方法,我也很感激!
ComboBox[1] = new JComboBox();
编辑2:18/09/17 @ 9.39pm - 仍然没有运气隔离导致问题的代码。当然,在静态和非静态方法之间进行引用时,这似乎是一个问题。
答案 0 :(得分:1)
无需声明DefaultComboBoxModel
,因为JComboBox
会为您执行此操作。所以尝试这样的事情:
public static JComboBox<String>[] comboBox = new JComboBox[100];
String[] array = { "Item1", "Item2", "Item3", "Item4" };
comboBox[1] = new JComboBox<>(array);
答案 1 :(得分:1)
你可以使用这样的东西
public static JComboBox[] comboBox = new JComboBox[100];
String[] array = { "Item1", "Item2", "Item3", "Item4" };
comboBox[1] = new JComboBox(array);
添加单个项目使用此
comboBox[1].addItem("Item goes here");