寻求正确编码
seek to code properly
我是一个包含两个 JTextField 和一个 JComboBox 的 GUI,基于 JComboBox 的内容,我将展示另一个包含一组组件的 JPanel。
所以我进行了如下操作(有效)但我想知道我的编码是否正确。
我创建了一个 class 来填充 HashMap (String, JPanel) ....字符串是我的 JComboBox
的内容
public class MapGui {
/**
* Create the panel.
*/
HashMap<String, JPanel> map;
public MapGui() {
map.put("1", new location());
map.put("2", new vente());
.......
}
每次调用方法时:
public JPanel getPanel(String s) {
return map.get(s);
}
and new location() and new vente() and ..... 是class继承自JPanel并包含所有组件的
提前致谢
不要为此目的使用地图。你描述的是Card Layout的行为。基本上,您创建一个使用上述布局管理器的 "Deck" 面板,添加您想要的卡片 (JPanel)(在您的情况下 location 和 vente) 到甲板面板,最后将甲板面板添加到框架。
要使面板的隐藏和显示机械化,只需使用侦听器即可。我提供的 link 显示 EXACTLY 你需要做什么来实现你的要求。
我是一个包含两个 JTextField 和一个 JComboBox 的 GUI,基于 JComboBox 的内容,我将展示另一个包含一组组件的 JPanel。
所以我进行了如下操作(有效)但我想知道我的编码是否正确。
我创建了一个 class 来填充 HashMap (String, JPanel) ....字符串是我的 JComboBox
的内容public class MapGui {
/**
* Create the panel.
*/
HashMap<String, JPanel> map;
public MapGui() {
map.put("1", new location());
map.put("2", new vente());
.......
}
每次调用方法时:
public JPanel getPanel(String s) {
return map.get(s);
}
and new location() and new vente() and ..... 是class继承自JPanel并包含所有组件的
提前致谢
不要为此目的使用地图。你描述的是Card Layout的行为。基本上,您创建一个使用上述布局管理器的 "Deck" 面板,添加您想要的卡片 (JPanel)(在您的情况下 location 和 vente) 到甲板面板,最后将甲板面板添加到框架。
要使面板的隐藏和显示机械化,只需使用侦听器即可。我提供的 link 显示 EXACTLY 你需要做什么来实现你的要求。