Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.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-使复选框停用JTextField_Java_Swing_Jframe_Jtextfield_Jcheckbox - Fatal编程技术网

Java-使复选框停用JTextField

Java-使复选框停用JTextField,java,swing,jframe,jtextfield,jcheckbox,Java,Swing,Jframe,Jtextfield,Jcheckbox,我是java编程新手,但是,我需要在选中JTextField时设置一个复选框来停用它,但我在这方面没有成功,我尝试了if(JTextField.isSelected()),但没有成功。 以下是我的复选框代码: JCheckBox chckbxMostrarSoma = new JCheckBox("Mostrar Soma?"); chckbxMostrarSoma.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));

我是java编程新手,但是,我需要在选中JTextField时设置一个复选框来停用它,但我在这方面没有成功,我尝试了
if(JTextField.isSelected())
,但没有成功。 以下是我的复选框代码:

JCheckBox chckbxMostrarSoma = new JCheckBox("Mostrar Soma?");
    chckbxMostrarSoma.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
    chckbxMostrarSoma.setSelected(true);
    chckbxMostrarSoma.setBounds(6, 86, 123, 23);
    contentPane.add(chckbxMostrarSoma);

我使用WindowBuilder制作JFrame(用自己的手制作JFrame太无聊了)

您需要在
JCheckBox中添加一个监听器。该侦听器应该捕获选择更改事件,然后停用
JTextField


如果您不理解上述内容,请阅读。

将其添加到您的复选框中

chckbxMostrarSoma.addActionListener(new ActionListener(){

        @Override
        public void actionPerformed(ActionEvent arg0) {

            if(chckbxMostrarSoma.isSelected()){
                textfield.setEnabled(false);
            } else{
                textfield.setEnabled(true);
            }

        }

    });
将代码中的“textfield”改为您的textfield。

1)
chckbxmostarsoma.setBounds(6,86,123,23)使用布局!2) 为了更快地获得更好的帮助,请发布一个。