使用JTable - 指定大小

时间:2015-02-10 02:19:05

标签: java swing jtable

我在程序中使用JTable。问题是当我设置整个JTable的大小时,我使用的是这个方法:

setPreferredScrollableViewportSize(Dimension size)

我的问题是,在使用此方法时,您输入宽度和长度(以像素为单位)。当程序在不同的计算机/机器上运行时是否会出现问题(格式化)?

1 个答案:

答案 0 :(得分:1)

Should I avoid the use of set(Preferred|Maximum|Minimum)Size methods in Java Swing? - 简短回答是肯定的(你应该避免使用)

设置表的preferredSize时,实际上并没有考虑表可能具有的行数或列数,具体取决于布局管理器,它可能永远不会大于您提供的维度,无论数据量

  

我的问题是,在使用此方法时,您输入宽度和长度(以像素为单位)。当程序在不同的计算机/机器上运行时是否会出现问题(格式化)?

一般来说,是的。

JTable旨在显示在JScrollPane内,这可以让您有一些余地,因为JTable可以在JScrollPane内增长和缩小,但是JScrollPane可以保持不变。

话虽如此,您不应该使用setPreferredSize,特别是不要弄乱JTableJTable根据数据需求计算自己的首选尺寸......而且它做得相当不错。

如果您想更改JScrollPane的尺寸,则需要更改getPreferredScrollableViewportSize的结果,以便JScrollPane知道某个组件对基本可视区域的重要程度在最佳条件下

请参阅How to Use TablesHow to Use Scroll Panes