Swing 的 JCheckBox 如何实现三种选中状态,即不选中、选中、半选。
如下图这样的。
多谢!!
swing 求助 JCheckBox
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;
}
}
});