JMenu JMenuCheckboxItem设置为当前状态

时间:2016-09-19 23:09:09

标签: java swing jmenu

我在JMenu中有一个JMenuCheckboxItem;我希望它在显示JMenu时反映程序选项的当前状态。我无法弄清楚在哪里初始化它。我为JMenu创建了一个import javafx.application.Application; import javafx.scene.control.ComboBox; import javafx.stage.Window; import org.jemmy.fx.AppExecutor; import org.jemmy.fx.SceneDock; import org.jemmy.fx.control.ComboBoxDock; import org.jemmy.fx.control.LabeledDock; import org.jemmy.resources.StringComparePolicy; import org.junit.BeforeClass; import org.junit.Test; import MySmallApplication; public class WindowBugTest3 { @BeforeClass public static void launch() throws InterruptedException { AppExecutor.executeNoBlock(MySmallApplication.class); Thread.sleep(1000); } @Test public void testWindowPosition() throws InterruptedException { SceneDock sceneDock = new SceneDock(); new LabeledDock( sceneDock.asParent(), "Show Dialog", StringComparePolicy.EXACT).mouse().click(); Thread.sleep(1000); SceneDock dialogSceneDock = new SceneDock( "My Dialog", StringComparePolicy.EXACT); ComboBoxDock comboBoxDock = new ComboBoxDock( dialogSceneDock.asParent(), "click-me"); comboBoxDock.selector().select("pear"); } } ,认为在显示菜单时会激活它,但根据我的调试器,它不是。我应该在哪里调用checkboxMenuItem.setState(),以便在用户显示菜单时反映选项的状态?

1 个答案:

答案 0 :(得分:0)

您可以按如下方式设置JCheckBoxMenuItem的初始状态

 JCheckBoxMenuItem chkBoxItem = new JCheckBoxMenuItem("select me")
    chkBoxItem.setSelected(true);

您还可以{ch获取addActionListener到chkBoxItem并获取chkBoxItem的动作命令,如actionEvent.getActionCommand()