在我的代码中,如果用户选择“生产”,则可用的频道会更改,但如果用户决定选择“暂存”或“测试”,则应显示完整的频道列表。发生这种情况时,显示的是[Ljava.lang.String;@1c23f1bb
。什么会纠正这种行为?我是java的新手。
下面是我的代码,当我将environmentCbx设置为“Production”以外的其他内容时,我没有在社区组合框中获得原始字符串数组communityNameString
。
String communityNameString[] = {"Connection","CDK","Governors", "Community", "Committee", "Center","All States","Community_2","Sandbox"};
environmentCbx.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae) {
JComboBox environmentCbx = (JComboBox)ae.getSource();
String environmentName = (String)environmentCbx.getSelectedItem();
if("Production".equals(environmentName))
{
communityCbx.removeAllItems();
//communityCbx.addItem(productionCommunityNames);
communityCbx.addItem("Associate");
}
else
{
communityCbx.removeAllItems();
communityCbx.addItem(communityNameString);
}
答案 0 :(得分:4)
如此example所示,您可以拥有多个ComboBoxModel
,并且可以根据需要进行更改。只需构建两个模型:一个包含完整列表,另一个包含子集。
附录:仔细阅读,符号[Ljava.lang.String;@1c23f1bb
是应用于String []
的{{3}}方法的工件。项目应该是个人Object
,例如String
;您添加了一整套String
个实例。