Swing 的 JCheckBox 如何实现三种选中状态,即不选中、选中、半选。
如下图这样的。
多谢!!swing求助JCheckBox

解决方案 »

  1.   

    jide的开源库 jide common layer 提供了 com.jidesoft.swing.TristateCheckBox 类:TristateCheckBox checkBox = new TristateCheckBox("Tristate Check Box");
    checkBox.setState(TristateCheckBox.STATE_MIXED);
    checkBox.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
    int state = checkBox.getState();
    switch (state) {
    case TristateCheckBox.STATE_MIXED:
    // mixed state
    break;
    case TristateCheckBox.STATE_UNSELECTED:
    // unselected state
    break;
    case TristateCheckBox.STATE_SELECTED:
    // selected state
    break;
    }
    }
    });
      

  2.   

    地址是 http://www.jidesoft.com/products/oss.htm