java - JTextArea 在调整 JFrame 大小时出现奇怪的行为

标签 java user-interface swing

我在我的 Swing 应用程序中使用了一些 JTextArea。使用 GridBagLayout 管理器将包围的 JScrollPane 添加到 JPanel

// Pseudo Code ----

JTextArea area = new JTextArea();
area.setRows(3);

JScrollPane sp = new JScrollPane(area);

JPanel p = new JPanel(new GridBagLayout());
p.add(sp, new GridBagConstraints(
          0, 0, 1, 1, 1, 0, WEST, HORIZONTAL, new Insets(4, 4, 4, 4), 0, 0));

// ----------------

一切正常。在我调整 JFrame 的大小之前完全没有问题。然后JTextArea 将折叠成一行。但是至少有足够的地方容纳其中一个。

为什么元素折叠成一行?
有谁知道解决方案?有人有想法吗?

最佳答案

我相信这是因为您将权重设置为 0(GridBagConstraints 构造函数的第 6 个参数)。如果你想让你的组件垂直增长,你需要增加它。

关于java - JTextArea 在调整 JFrame 大小时出现奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/750637/

相关文章:

java - 如何将对象数组添加到列表中

java - SAML LogoutRequest 到 xml 表示

java - 类型转换问题

java.sql.SQLException : Illegal operation on empty result set. Else 语句不起作用

java - spring boot 到 mysql docker 通信

c++ - 将 GUI 添加到 c++ win32 控制台

java - 具有多个Windows设计的MVC

java - Swing 线程回调

java - 有谁知道如何布局不移动或重新调整放置在其中的任何组件的大小的 JToolBar ?

java - PaintComponent() TextField 导致无限循环(自身 + 父级)