gpt4 book ai didi

java - 按下 Enter 键时添加字符(或字符串)(在 JTextPane 中)

转载 作者:行者123 更新时间:2023-12-01 20:22:11 24 4
gpt4 key购买 nike

所以我有一个 JTextPane 并添加了一个 keyListener,这样我就可以知道是否按下了 Enter 按钮:

JTextPane textPane = new JTextPane();

textPane.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {

if(e.getKeyCode() == KeyEvent.VK_ENTER){
// add there the code to add a character to the textPane!
}
}
@Override
public void keyReleased(KeyEvent e) {
}
});

但是现在我很困惑,如何添加一个字符'}'到textPane?
(不是任何地方,就在光标位置之后,到下面...)

最佳答案

正如 @HovercraftFullOfEels 在上面的评论中所建议的,不要使用 KeyListener 来监听 enter 键,而是使用 KeyBindingsDocumentListener 。这是 answer来自使用按键绑定(bind)的 Hovercraft,尽管它没有使用 JTextPane,但您可以从那里获取总体思路。

要在插入符号位置附加文本,您可以尝试 JTextPane#replaceSelection(String)来自文档:

Replaces the currently selected content with new content represented by the given string. If there is no selection this amounts to an insert of the given text. If there is no replacement text this amounts to a removal of the current selection. The replacement text will have the attributes currently defined for input at the point of insertion. If the document is not editable, beep and return.

关于java - 按下 Enter 键时添加字符(或字符串)(在 JTextPane 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44550511/

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