寻求正确编码

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)(在您的情况下 locationvente) 到甲板面板,最后将甲板面板添加到框架。

要使面板的隐藏和显示机械化,只需使用侦听器即可。我提供的 link 显示 EXACTLY 你需要做什么来实现你的要求。