gpt4 book ai didi

java - 运行时调整 JScrollPane(包含 JTable)的大小

转载 作者:行者123 更新时间:2023-12-01 10:51:19 25 4
gpt4 key购买 nike

我有一个基本的 JFrame - 它包含一个 JTable(由 NetBeans swing GUI 构建器自动添加的 JScrollPane 包围,我想保留滚动 Pane )。

当通过单击按钮实例化框架时,JTable 中的行数可能会根据打开它的按钮而变化。我想调整 JTable 的大小,这样如果只有 2 行,额外的空间就不会显得很愚蠢。包含 JTable 的 JScrollPane 似乎是给我带来问题的原因。这是我的代码:

public dynamicScrollPaneResize() {
initComponents();

exampleTable.setShowGrid(true);

DefaultTableModel exampleTableModel = (DefaultTableModel)exampleTable.getModel();
exampleTableModel.setRowCount(0);
Object[] firstRow = {"Sweater 1","Blue"};
Object[] secondRow = {"Sweater 2","Purple"};
exampleTableModel.addRow(firstRow);
exampleTableModel.addRow(secondRow);

exampleScrollPane.setPreferredSize(new Dimension(exampleTable.getWidth(),10));
exampleScrollPane.setMaximumSize(new Dimension(exampleTable.getWidth(),10));
exampleTable.setFillsViewportHeight(true);

this.revalidate();
this.repaint();
}

我尝试清除行,然后添加我想要的 2 行,然后相应地调整大小。我只是输入 10 作为高度,因为我知道我会看到差异,但事实并非如此。如果我尝试调整表格大小,它工作得很好,但调整滚动 Pane 的大小到目前为止没有效果。

最佳答案

  1. 转到设计 View
  2. 选择左下角导航器窗口中的滚动 Pane 。
  3. 右键单击弹出菜单。
  4. 确保选中自动调整大小 -> 水平自动调整大小 -> 垂直
  5. 添加一个名为 paneSize(例如)的 Dimension 类型的类变量。
  6. 从弹出菜单中选择滚动 Pane 的“属性”。
  7. 点击 PreferredSize 旁边带有 ... 的按钮。
  8. 使用自定义代码更改属性。
  9. 在自定义代码的文本字段中输入您添加的变量的名称。 (例如 Pane 大小)。
  10. 在调用 initComponents 之前,在构造函数中将 paneSize 设置为您想要的值。

关于java - 运行时调整 JScrollPane(包含 JTable)的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33878942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com