我在 JMenu 中有一个 JCheckBoxMenuItem。我的任务很简单:当它被选择时,它应该触发一个 DialogBox,换句话说,一个 JFileChooser。当未选择时,不执行任何操作。问题:选择它时它工作正常,但取消选择时它继续做同样的事情。
这是代码:
JCheckBoxMenuItem checkBox = new JCheckBoxMenuItem("ChebkBox");
checkBox.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent arg0) {
if(checkBox.isSelected())
{
System.out.println("SELECTED!");
checkBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JFileChooser fileChooser = new JFileChooser();
if (fileChooser.showSaveDialog(checkBox) == JFileChooser.APPROVE_OPTION) {
//DIALOG BOX CODE....
});
我不确定问题出在哪里,也许与嵌套的操作列表器有关。即使复选框未被选中,它也会被触发。有办法解决这个问题吗?
达令说
相关分类