Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将JCheckBox设置为有复选标记,或不在程序中_Java_Swing_Jcheckbox - Fatal编程技术网

Java 如何将JCheckBox设置为有复选标记,或不在程序中

Java 如何将JCheckBox设置为有复选标记,或不在程序中,java,swing,jcheckbox,Java,Swing,Jcheckbox,我使用一个JCheckBox作为不可编辑的指示器,用于指示程序中何时发生了某些事情。现在我有这个: public void update(Observable o, Object arg) { try { if (Controller.c.turn.equals(this)) { tp.turnCheckBox.setBorderPainted(true); } else { tp.turn

我使用一个
JCheckBox
作为不可编辑的指示器,用于指示程序中何时发生了某些事情。现在我有这个:

public void update(Observable o, Object arg) {
    try {

        if (Controller.c.turn.equals(this)) {
            tp.turnCheckBox.setBorderPainted(true);
        }
        else {
            tp.turnCheckBox.setBorderPainted(false);
        }
    } catch (Exception e) {
    }
基本上,不是绘制
turnCheckBox
边框。。。我想在上面打个勾。
这似乎是一个简单的预先制作的方法,可能我遗漏了什么,但我无法实现。

使用
tp.turnchexbox.setSelected(boolean isSelected)
将选中(或取消选中)复选框。

要在“只读”模式下使用复选框,请使用:

tp.turnCheckBox.setEnabled(false);
要使复选框显示为选中或未选中,请使用:

tp.turnCheckBox.setSelected(isSelected);

其中isSelected是一个布尔表达式,指示控件是否已选中。

JCheckBox有一个来自其超类setSelected()的方法。对于您将来的知识和搜索,在包含这些组件的Api中,通常有一系列超类,您可以上去搜索这些方法

JCheckBox必须将类的两个级别提升到AbstractButton才能找到setSelected()方法


有时候,找到这样的东西最快的方法就是使用IDE的自动完成。

谢谢,我想我没有看到这种方法!使用海报的示例代码:
tp.turnCheckBox.setSelected(Controller.c.turn.equals(this))Marcelo在他的回答中提出了一个很好的观点,我建议你也要注意:o)OP还希望复选框不可编辑(只读)。