Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在GridLayout中添加滚动窗格不会';更改JFrame的大小时,t会调整JPane中JTextarea的大小_Java_Swing_Jscrollpane_Jtextarea - Fatal编程技术网

Java 在GridLayout中添加滚动窗格不会';更改JFrame的大小时,t会调整JPane中JTextarea的大小

Java 在GridLayout中添加滚动窗格不会';更改JFrame的大小时,t会调整JPane中JTextarea的大小,java,swing,jscrollpane,jtextarea,Java,Swing,Jscrollpane,Jtextarea,我想在当前的GridLayout中添加一个带有填充JTextArea组件的网格。 它工作得很好,但正如标题中提到的,JTextArea不会自行调整大小 改变框架大小后 我已将错误本地化: text.setLineWrap(true); //<--- here is the problem!!enter code here text.setLineWrap(true)// 您正在运行时添加组件。在这种情况下,您需要确保容器得到重新验证: void addNewRow() { pan

我想在当前的GridLayout中添加一个带有填充JTextArea组件的网格。 它工作得很好,但正如标题中提到的,JTextArea不会自行调整大小 改变框架大小后

我已将错误本地化:

text.setLineWrap(true); //<--- here is the problem!!enter code here

text.setLineWrap(true)// 您正在运行时添加组件。在这种情况下,您需要确保容器得到重新验证:

void addNewRow() {
    panel.add(new JLabel("Test1"));
    panel.add(new JTextField("Test"));
    panel.revalidate();
    panel.repaint();
}//addNewRow

此外,您应该仅在事件分派线程中创建和访问swing组件。有关详细信息,请参阅。

谢谢您的留言。但一旦我更改了框架大小,gridLayout仍然不会调整自身大小。@user3300710不调整大小是什么意思<代码>网格布局
使所有组件大小相同。这包括
JTextArea
。好的,把窗口放大,你会看到每个组件都会调整自己的大小。与使其变小相比,您将看到组件不再改变其大小。缩小帧后的大小调整将不起作用work@user3300710好啊我不知道你想从包装线上得到什么。在本例中,这没有什么区别,因为缩小窗口只会显示滚动条。但是,在某些情况下,
JTextPane
换行更合适。
void addNewRow() {
    panel.add(new JLabel("Test1"));
    panel.add(new JTextField("Test"));
    panel.revalidate();
    panel.repaint();
}//addNewRow