动态添加带引用的MenuItem

时间:2012-02-05 20:27:54

标签: java swing dynamic

我的电脑里有x端口。我想添加到菜单中的任何设备插入并为监听器重新接收用户输入。我写道:

private void portSelectItem(){

    JMenu port=new JMenu("Port");

    String[] portTab= SerialIO.listPorts();

    for(String s : portTab){                    

        port.add(new JCheckBoxMenuItem(s));

    }

}

通过这种方式,我可以生成动态x引用并在此端口中添加侦听器吗?

2 个答案:

答案 0 :(得分:2)

1)setActionCommand(String portTab)

2)您可以添加到JCheckBoxMenuItem

3)Listeners中的每一个都返回Object fired select/deselect event,如果已定义,此Object会返回getActionCommand(String portTab)

答案 1 :(得分:2)

检查Swing菜单tutorial。这是一个例子:

ButtonGroup buttonGroup = new ButtonGroup();
for(String s : portTab){                    
    JCheckBoxMenuItem checkBoxMenuItem = new JCheckBoxMenuItem();  
    checkBoxMenuItem.setText(s);
    buttonGroup.add(checkBoxMenuItem);
    checkBoxMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            //TODO 
        }
    });         
}