首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java JEditorPane

Java JEditorPane
EN

Stack Overflow用户
提问于 2010-04-27 03:29:55
回答 2查看 764关注 0票数 0

ChatGUI

我正在使用2 JEditorPane将文本从一个传输到另一个。

一旦我传输了数据,我将执行以下操作:

代码语言:javascript
复制
JEditorPane.setText(null);

JEditorPane.setCaretPosition(0);

但是,正如您从附加的图像中看到的,返回操作会使提示符出现在下一行。我该如何解决这个问题呢?

编辑:以下内容对你来说是正确的吗?如果是这样,那么为什么插入符号不将自己定位到chracter 0位置?

代码语言:javascript
复制
    private class MyKeyAdapter extends KeyAdapter {

    @Override
    public void keyPressed(KeyEvent ke) {

        int kc = ke.getKeyCode();

        if (kc == ke.VK_ENTER) {

            System.out.println(editorPaneHistory.getText());

            System.out.println(editorPaneHomeText.getText());

            editorPaneHistory.setText(editorPaneHomeText.getText());

            //JEditorPane - editorPaneHistory
            //JEditorPane - editorPaneHomeText

            editorPaneHomeText.setText(null);

            editorPaneHomeText.setCaretPosition(0);

        }
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-04-27 04:53:56

代码运行后,JEditorPane会以通常的方式对Enter键做出反应,即插入一个换行符。尝试调用ke.consume()来“消费”该事件,这样JEditorPane本身就不会处理它。

票数 1
EN

Stack Overflow用户

发布于 2010-04-27 10:20:13

不要使用KeyListener。您应该使用自定义操作。这样,您就可以替换默认的Action。阅读Key Bindings上的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2716256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档