Java 停止JTextPane接收新行提要

Java 停止JTextPane接收新行提要,java,swing,jtextpane,Java,Swing,Jtextpane,我希望我的JTextPane在用户按下Enter时具有一些功能,而不仅仅是更改行。现在我了解了如何实现我想要的功能,但我仍然无法通过按Enter来取消换行操作。我尝试了以下方法,但似乎不起作用,新行将被创建 为了更好地了解我在这里要实现的目标,textpane应该包含一个特定的文件路径,因此我希望用户只能水平滚动,而不能垂直添加新行。JTextPane组件是否适合此用途 locationPane = new JTextPane(); locationPane.addKeyListener

我希望我的
JTextPane
在用户按下Enter时具有一些功能,而不仅仅是更改行。现在我了解了如何实现我想要的功能,但我仍然无法通过按Enter来取消换行操作。我尝试了以下方法,但似乎不起作用,新行将被创建

为了更好地了解我在这里要实现的目标,textpane应该包含一个特定的文件路径,因此我希望用户只能水平滚动,而不能垂直添加新行。JTextPane组件是否适合此用途

locationPane = new JTextPane();
    locationPane.addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(KeyEvent arg0) {
            if(arg0.getExtendedKeyCode() == KeyEvent.VK_ENTER){
                locationPane.setText(locationPane.getText().substring(0, locationPane.getText().length()));
            }
        }
    });

keylister
从来都不是文本组件的合适选项。相反,您应该使用
DocumentFilter
筛选出不希望添加到基础
文档中的内容

有关详细信息,请参阅和

您还可以更改
插入中断
键绑定,更改行为或采取其他操作


有关更多详细信息,请参见

KeyListener
从来都不是文本组件的合适选项。相反,您应该使用
DocumentFilter
筛选出不希望添加到基础
文档中的内容

有关详细信息,请参阅和

您还可以更改
插入中断
键绑定,更改行为或采取其他操作

有关更多详细信息,请参阅

textpane应该包含一个特定的文件路径,所以我希望用户只能水平滚动,而不能垂直添加新行。JTextPane组件是否适合此用途

locationPane = new JTextPane();
    locationPane.addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(KeyEvent arg0) {
            if(arg0.getExtendedKeyCode() == KeyEvent.VK_ENTER){
                locationPane.setText(locationPane.getText().substring(0, locationPane.getText().length()));
            }
        }
    });
我建议有更好的选择

如果只有一行文本,那么只需使用
JTextField
。要处理Enter键,您可以在文本字段中添加一个
ActionListener

如果您确实需要多行,那么我建议您可以使用
JList

textpane应该包含一个特定的文件路径,所以我希望用户只能水平滚动,而不能垂直添加新行。JTextPane组件是否适合此用途

locationPane = new JTextPane();
    locationPane.addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(KeyEvent arg0) {
            if(arg0.getExtendedKeyCode() == KeyEvent.VK_ENTER){
                locationPane.setText(locationPane.getText().substring(0, locationPane.getText().length()));
            }
        }
    });
我建议有更好的选择

如果只有一行文本,那么只需使用
JTextField
。要处理Enter键,您可以在文本字段中添加一个
ActionListener

如果您确实需要多行,那么我建议您可以使用
JList