繁体   English   中英

从禁用的JTextField获取文本

[英]Get Text From a disabled JTextField

我一直在使用功能getText()来读取MyJTextField中的用户输入,直到我注意到禁用JTextField看起来不可行。

JTextField jtx = new JTextField();
jtx.setText("TEST");
jtx.setEnabled(false);
String str = jtx.getText();
System.out.println(str);

这不会返回任何信息,我开始认为这是由于禁用的JTextField。 有没有一种方法可以从禁用的JTextField中获取文本,还是应该:

jtx.setEditable(false);

我不想这样做。 我希望禁用该字段。

下面的代码按预期工作(打印TEST是启用还是禁用了文本字段)-您是否在EDT中运行代码?

public static void main(String[] args) throws InterruptedException {
    Runnable r = new Runnable() {
        @Override
        public void run() {
            JTextField jtx = new JTextField();
            jtx.setText("TEST");
            System.out.println("Before: " + jtx.getText());
            jtx.setEnabled(false);
            System.out.println("After: " + jtx.getText());
        }
    };
    SwingUtilities.invokeLater(r);
}

您绝对可以使用指定的代码从禁用的JTextField获取文本。 在其他地方搜索问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM