gpt4 book ai didi

java - 我想让一个文本字段只有在 Netbeans 中选中一个复选框时才可编辑

转载 作者:行者123 更新时间:2023-11-29 07:16:01 24 4
gpt4 key购买 nike

我使用的是 Netbeans,我希望文本字段只有在用户单击复选框时才可编辑。我有它,当他们选中复选框时,它使文本字段可编辑,但我如何做到这一点,当他们取消选中复选框时,文本字段再次变得不可编辑?

我用来使其可编辑的代码是 -

private void chk4By6MouseClicked(java.awt.event.MouseEvent evt) {
txt4By6.setEditable(true);
}

最佳答案

使用ItemListener ,这样您就可以启用或禁用 JTextField,具体取决于 JCheckBoxSELECTED 还是 DESELECTED

示例程序:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class ModifyTextField
{
public static void createAndDisplayGUI()
{
JFrame frame = new JFrame("MODIFY TEXTFIELD");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationByPlatform(true);

final JPanel contentPane = new JPanel();

final JTextField tfield = new JTextField(10);
tfield.setEnabled(false);

final JCheckBox cbox = new JCheckBox("Enable TEXTFIELD", false);

ItemListener itemListener = new ItemListener()
{
public void itemStateChanged(ItemEvent ie)
{
tfield.setEnabled(ie.getStateChange() == ItemEvent.SELECTED)
}
};
cbox.addItemListener(itemListener);

contentPane.add(cbox);
contentPane.add(tfield);

frame.getContentPane().add(contentPane);
frame.pack();
frame.setVisible(true);
}

public static void main(String... args)
{
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
createAndDisplayGUI();
}
});
}
}

结果:

DESELECTEDSELECTED

关于java - 我想让一个文本字段只有在 Netbeans 中选中一个复选框时才可编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9612096/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com