gpt4 book ai didi

java - 不断从 JTextField 读取字符串

转载 作者:行者123 更新时间:2023-12-04 05:57:09 25 4
gpt4 key购买 nike

我有一个 DocumentListener 来查找 JTextField 中的任何更改:

public class MyDocumentListener implements DocumentListener {

static String text;

public void insertUpdate(DocumentEvent e) {
updateLog(e);
}
public void removeUpdate(DocumentEvent e) {
updateLog(e);
}
public void changedUpdate(DocumentEvent e) {
//Plain text components do not fire these events
}

public static String passText() {
System.out.println("string that will be passed is: "+text);
return text;
}

public void updateLog(DocumentEvent e) {

Document doc = (Document)e.getDocument();
int length = e.getLength();

try {
text = doc.getText(0, length);
} catch (BadLocationException e1) {
e1.printStackTrace();
}
System.out.println("you typed "+text);
}
}

然后,在另一个类中:
String info = MyDocumentListener.passText();

问题是我只得到一个字符,而不是整个字符串。有什么建议?

最佳答案

您将获得更改的长度而不是文档的长度:

int length = e.getLength(); // probably 1

应该
int length = doc.getLength();
  • int getLength() javadoc
  • 关于java - 不断从 JTextField 读取字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9383265/

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