gpt4 book ai didi

java - 在 Enter 键上获取 JTextArea 当前行文本

转载 作者:行者123 更新时间:2023-12-04 00:32:35 27 4
gpt4 key购买 nike

嗯,这也许是个小问题,但我想不通。
当我按下 Enter 键时,我希望我的程序在当前光标位置显示文本。
这是我当前的代码:

if (evt.getKeyCode() == 10) {
try {
int offset=ta.getLineOfOffset(ta.getCaretPosition());
int start=ta.getLineStartOffset(offset);
int end=ta.getLineEndOffset(offset);

System.out.println("ext: "+ta.getText(start, end));

} catch (BadLocationException ex) {
System.out.println(ex.getMessage());
}
}

它只在我第一次按 Enter 键时起作用,下次按它时,它会抛出异常“Invalid Location”。
有更好的方法吗?

最佳答案

呵呵,自己解决了:

这是我正在寻找的正确代码:

if (evt.getKeyCode() == 10) {
try {
int offset=ta.getLineOfOffset(ta.getCaretPosition());
int start=ta.getLineStartOffset(offset);
int end=ta.getLineEndOffset(offset);

System.out.println("Text: "+ta.getText(start, (end-start)));
} catch (BadLocationException ex) {
System.out.println(ex.getMessage());
}
}

也许它对那里的另一个人有用:)

关于java - 在 Enter 键上获取 JTextArea 当前行文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16921536/

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