单行JTextArea

Dav*_*vid 5 java swing text awt

当您键入JTextArea时,它会自动调整其大小以适合输入的文本.

但是,JTextField似乎并没有这样做.这是一个证明问题的SSCCE:

public static void main(String[] args) {

    JFrame frame = new JFrame();
    frame.setLayout(new FlowLayout(FlowLayout.LEFT));
    frame.add(new JTextArea("I resize as you type."));
    frame.add(new JTextField("I don't."));
    frame.setSize(200,100);
    frame.setVisible(true);
}
Run Code Online (Sandbox Code Playgroud)

自动调整大小

我想知道是否有一种方法可以让JTextField调整它的宽度.我希望我可以使用JTextArea,但我只能接受一行输入.

cam*_*ckr 8

但我只能接受一行输入

单行文本区域显示了如何执行此操作.相关代码是

textArea.getDocument().putProperty("filterNewlines", Boolean.TRUE);
Run Code Online (Sandbox Code Playgroud)