Java 如何在JTextPane中动态生成新行?

Java 如何在JTextPane中动态生成新行?,java,swing,newline,jtextpane,Java,Swing,Newline,Jtextpane,当用户键入内容并到达屏幕/帧的末尾时,如何让JTextPane创建新行?以下是我所拥有的: JFrame frame = new JFrame("Frame"); JTextPane pane= new JTextPane (); JPanel panel = new JPanel(new BorderLayout()); panel.add(pane); JScrollPane scrollBar = new JScrollPane(panel); scrollBar.set

当用户键入内容并到达屏幕/帧的末尾时,如何让JTextPane创建新行?以下是我所拥有的:

JFrame frame = new JFrame("Frame");

JTextPane pane= new JTextPane ();
JPanel panel = new JPanel(new BorderLayout());
panel.add(pane);
JScrollPane scrollBar = new JScrollPane(panel);
        scrollBar.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);

frame.add(scrollBar, BorderLayout.CENTER);

请注意,这不适用于JTextPane中的某些固定字符串,这意味着该窗格默认为空,文本由用户输入添加。当用户正在键入某个内容,并且单词已到达屏幕的末尾时,文本应继续在新行上,而不是继续在同一行上…

我不明白人们为什么一直问这个问题。JTextPane通常包装单词:

public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {
        @Override
        public void run() {
            JFrame mainFrame = new JFrame("test");
            mainFrame.setSize(100, 100);
            mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

            Container pane = mainFrame.getContentPane();
            JTextPane jtp = new JTextPane();
            JScrollPane scroll = new JScrollPane(jtp);
            pane.add(scroll);

            mainFrame.setVisible(true);
        }
    });
}

您可以使用
JTextArea
并调用
setWrapStyleWord(true)
我必须使用JTextPane如果我记得,你可以使用
边框布局将
JTextPane
添加到
JPanel
,然后将
JPanel
添加到
JScrollPane
看看这个解决方案:@MadProgrammer谢谢你的回复,我不确定我是否知道在哪里添加JTextPane。我是将其添加到JPanel还是BorderLayout?我已经更新了上面的代码