寻求正确编码

时间:2015-01-28 21:30:18

标签: java swing jcombobox

我是一个包含两个JTextField和一个JComboBox的GUI,基于JComboBox的内容,我将展示另一个包含一组组件的JPanel。

所以我继续如下(它有效)但我想知道我是否正确编码。

我创建了一个填充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);

}

和new location()以及new vente()和.....是从JPanel继承并包含所有组件的类。

提前谢谢

1 个答案:

答案 0 :(得分:1)

不要为此目的使用地图。你所描述的是Card Layout的行为。基本上,您创建一个使用上述布局管理器的“Deck”面板,将所需的卡片(JPanel)(在您的情况下为 location vente )添加到卡座面板,最后将甲板面板添加到框架中。

要隐藏和显示面板,只需使用监听器即可。我提供的链接显示完全您需要做什么来实现您的要求。