如何让我的 JTextArea 或 JTextPane 自动创建一个新行?
How to make my JTextArea or JTextPane automatically create a new line?
在我的程序中,我想要一个较大的区域用于输入。我一直在使用 JTextPanes 和 JTextAreas。但是,如果我连续键入,当我到达该区域的末尾时,它不会自动创建一个新行,它只是继续离开框,我知道我可以添加一个水平滚动条,但我更希望它只是下降到当我到达框的末尾时换行。我看到了一个叫做 dropMode 的东西,并尝试使用它看看它是否有帮助,但它只是导致了以下错误 "Unsupported drop mode for text"。我的程序是基于 GUI 的,因此用户将直接在该区域中键入内容,而不是附加它。
textArea.setLineWrap(true)
应该如您所愿。
示例:
public Etst() {
JFrame f = new JFrame();
f.setLayout(new BorderLayout());
JTextArea area = new JTextArea();
area.setLineWrap(true);
f.add(area);
f.setSize(100, 100);
f.setVisible(true);
}
在我的程序中,我想要一个较大的区域用于输入。我一直在使用 JTextPanes 和 JTextAreas。但是,如果我连续键入,当我到达该区域的末尾时,它不会自动创建一个新行,它只是继续离开框,我知道我可以添加一个水平滚动条,但我更希望它只是下降到当我到达框的末尾时换行。我看到了一个叫做 dropMode 的东西,并尝试使用它看看它是否有帮助,但它只是导致了以下错误 "Unsupported drop mode for text"。我的程序是基于 GUI 的,因此用户将直接在该区域中键入内容,而不是附加它。
textArea.setLineWrap(true)
应该如您所愿。
示例:
public Etst() {
JFrame f = new JFrame();
f.setLayout(new BorderLayout());
JTextArea area = new JTextArea();
area.setLineWrap(true);
f.add(area);
f.setSize(100, 100);
f.setVisible(true);
}