【问题标题】:JTable preferred size with header?带有标题的 JTable 首选大小?
【发布时间】:2015-02-24 19:33:14
【问题描述】:

我正在尝试将 JScrollPane 设置为 JTable 的大小,以便获得列标题,但我不希望它可滚动(也不让 JScrollPane 占用不必要的屏幕空间)。如何使用列标题获取 JTable 的首选尺寸,以便将 JScrollPane 的首选尺寸设置为它?

【问题讨论】:

  • 您可以通过链接 JTable 的 getPreferredScrollableViewportSize 返回的值来影响 JScrollPane 所需的空间量。您可以将表格设置为自动调整大小,这将强制表格仅占用 JTable 的可用水平空间,请参阅setAutoResizeMode
  • JTable 的preferredSize 是JScrollPane 用来显示表头并决定是否显示滚动条的大小
  • 垂直空间呢?我想将垂直 JScrollPane 空间限制为 JTable 的高度。
  • JTable#getPreferredSize。您可以尝试通过JTablegetPreferredScrollableViewportSize 提供来自getPreferredSize 的信息,这会将JScrollPane 的可视区域限制为JTable 的最佳大小,但它也可能会出现其他问题。 ..

标签: java swing jtable jscrollpane


【解决方案1】:
    JScrollPane pane = new JScrollPane(table);
    pane .setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_NEVER);

你可以对水平做同样的事情。通常根据需要将它们设置为首选。

【讨论】:

  • 好的,您已经隐藏了滚动条,这不会阻止表格/标题超出滚动窗格的垂直范围...
  • 是的,我刚刚尝试过,这正是发生的情况。接下来我将使用您的解决方案...
猜你喜欢
  • 2015-01-20
  • 1970-01-01
  • 1970-01-01
  • 2012-01-01
  • 2018-03-20
  • 1970-01-01
  • 2019-10-07
  • 2019-06-29
  • 2011-09-08
相关资源
最近更新 更多