如何在JComboBox的顶部添加默认条目,例如Add New Item,以便允许用户单击此条目并获得允许他们创建新条目的对话框?我应该尝试使用自定义渲染器还是最好的方法?我感谢任何人的帮助。
答案 0 :(得分:1)
1)在填充组合
的源代码顶部添加一个条目2)向组合框添加一个监听器,当selectedindex = 0时启动一个外部对话框
答案 1 :(得分:1)
我认为用户界面设计会有更好的按钮,可以为您的模型添加新项目。
考虑一下:如果你使用JComboBox来控制添加,你是否也将它扩展到控制删除?创建第一个条目后会发生什么?该默认条目是否消失?当您有大量条目时会发生什么?
此外,我发现通过专用的添加/删除按钮可以更轻松地控制权限。
答案 2 :(得分:0)
您可以将组合框的第一项设置为空字符串,并添加指示用户可以输入自己的文本或编辑任何条目的说明。
如果组合框被标记为可编辑,那么只要用户输入组合框,就会弹出一个文本输入框。
像这样: Vector<String> options = new Vector<String>();
options.add("");
options.add("blue");
options.add("red");
...
JComboBox result = new JComboBox(options);
result.setEditable(true);
另外,如果组合框在表格中,那么你可以为渲染器和编辑器使用不同的组合框;如:如果该单元格的值为null或空字符串,那么您可以使渲染器组合框有一个选项,说“选择或输入值”或“选择一个值”然后编辑器是实际的我在上面定义的组合框。