SwingSet2
看看Demo.  private ButtonGroup lafMenuGroup = new ButtonGroup(); JMenuItem mi = (JRadioButtonMenuItem) menu.add(new JRadioButtonMenuItem(getString(label)));
lafMenuGroup.add(mi);

解决方案 »

  1.   

    方框什么的是由LookAndFeel来决定的. 即使你看来是打勾, 换了L&F也可能是其他效果.
      

  2.   

    bovy(★ 天道酬勤 ★) (看不懂你的代码,能加全点吗
      

  3.   

    换了L&F也是原来 的样子啊!
      

  4.   

    “方框什么的是由LookAndFeel来决定的. 即使你看来是打勾, 换了L&F也可能是其他效果.

    ?????????????
      

  5.   

    楼主的意思实际上是一个ButtonGroup,在选中某一个的时候在前面显示一个对勾,这个问题我也曾经想过,但是没有实现
    期待高手!
      

  6.   

    会不会要重写CheckBox的repaint()方法啊,那可就太麻烦了
      

  7.   

    推荐用JCheckBoxMenuItem,
    你那个功能,自己写几行不就行了
      

  8.   

    楼上的,用JCheckBoxMenuItem,当然最好了,但不知道怎么实现这个功能,你有代码否,学习学习
      

  9.   

    用 JRadioButtonMenuItem,并将需分组的菜单加到同一个 ButtonGroup 中,示例代码JRadioButtonMenuItem item1 = JRadioButtonMenuItem(new AbstractAction("MenuItem1")
    {
      public void actionPerformed(ActionEvent e)
      {
        //加入事件响应代码
      }
    });JRadioButtonMenuItem item2 = JRadioButtonMenuItem(new AbstractAction("MenuItem2")
    {
      public void actionPerformed(ActionEvent e)
      {
        //加入事件响应代码
      }
    });ButtonGroup bg = new ButtonGroup();
    bg.add(item1);
    bg.add(item2);
      

  10.   

    我知道可以用RadioButtonMenuItem,并把它放在一个ButtonGroup里,但用它后在选中后它标签前面的那个黑圆点怎么能变成对勾,这是我想要的效果,可能是我没说清楚
      

  11.   

    JCheckBoxMenuItem item1 = new JCheckBoxMenuItem(new AbstractAction(
          "MenuItem1") {
        public void actionPerformed(ActionEvent e) {
          //加入事件响应代码
        }
      });
      JMenu jMenu = new JMenu("www");
      JCheckBoxMenuItem item2 = new JCheckBoxMenuItem(new AbstractAction(
          "MenuItem2") {
        public void actionPerformed(ActionEvent e) {
          //加入事件响应代码
        }
      });
    ButtonGroup bg = new ButtonGroup();bg.add(item1);
    bg.add(item2);
    jMenu.add(item1);
    jMenu.add(item2);
    看看是不是你要的效果。