Java JCheckBox尺寸和尺寸;射击动作

Java JCheckBox尺寸和尺寸;射击动作,java,swing,action,jmenu,jmenuitem,Java,Swing,Action,Jmenu,Jmenuitem,我在从JCheckBox启动操作时遇到一些问题: JMenu topMenu = new JMenu("Top Menu"); MyAction action1 = new MyAction("Action1"); MyAction action2 = new MyAction("A2"); JCheckBox checkBox1 = new JCheckBox( action1 ); JCheckBox checkBox2 = new JCheckBox( action2 ); topM

我在从JCheckBox启动操作时遇到一些问题:

JMenu topMenu = new JMenu("Top Menu");

MyAction action1 = new MyAction("Action1");
MyAction action2 = new MyAction("A2");

JCheckBox checkBox1 = new JCheckBox( action1 );
JCheckBox checkBox2 = new JCheckBox( action2 );

topMenu.add( checkBox1 );
topMenu.add( checkBox2 );
当鼠标移到topMenu上时,它会展开并显示标记为“Action1”和“A2”的JCheckbox。 单击复选框或文本可切换复选框

这一部分有点难以解释:“A2”右侧有一个区域是空的——因为“Action1”占据了更多的空间,所以悬停在topMenu上时显示的子菜单将是“Action1”的宽度。“A2”行的宽度相同,但只有复选框和“A2”触发操作

单击“A2”文本右侧不会执行任何操作。
我该如何以最简单的方式解决这个问题呢?

不要将JCheckbox添加到菜单中。而是使用菜单变量:。将解释如何使用这些

e、 g


不要将JCheckbox添加到菜单中。而是使用菜单变量:。将解释如何使用这些

e、 g


为了更快地获得更好的帮助,请包括一个为了更快地获得更好的帮助,请包括一个我实际上已经尝试过这个,但有一个小问题。JCheckBoxMenuItem中的复选框对你们来说是否显示得更小?(我们正在使用的java版本中有一个bug,它阻止我将JComponent的sizeVariant属性设置为“regular”。不幸的是,我无法更改java版本。)我确实尝试过这个,但有一个小问题。JCheckBoxMenuItem中的复选框对你们来说是否显示得更小?(我们正在使用的java版本中有一个bug,它阻止我将JComponent的sizeVariant属性设置为“常规”。不幸的是,我无法更改java版本。)
JMenu topMenu = new JMenu("Top Menu");

MyAction action1 = new MyAction("Action1");
MyAction action2 = new MyAction("A2");

JCheckBoxMenuItem checkBox1 = new JCheckBoxMenuItem( action1 );
JCheckBoxMenuItem checkBox2 = new JCheckBoxMenuItem( action2 );

topMenu.add( checkBox1 );
topMenu.add( checkBox2 );