使用 JTable - 指定大小
Using JTable - specifying size
我正在程序中使用 JTable。问题是,当我设置整个 JTable 的大小时,我使用的是这种方法:
setPreferredScrollableViewportSize(Dimension size)
我的问题是,使用此方法时,您输入的宽度和长度(以像素为单位)。当程序在不同的 computers/machines 上 运行 时会出现问题(格式化方面)吗?
Should I avoid the use of set(Preferred|Maximum|Minimum)Size methods in Java Swing? - 简短的回答是肯定的(你应该避免它)
设置 table 的 preferredSize 时,您实际上并没有考虑 table 可能具有的行数或列数,这取决于布局管理器,它可能永远不会大于您提供的尺寸,无论数据量如何
The question I have is that when using this method, you enter in the width and length in pixels. Will there be issues (formatting-wise) when the program is run on different computers/machines?
一般来说,是的。
JTable
被设计为在 JScrollPane
内显示,这让您有一些余地,因为 JTable
可以在 JScrollPane
内增长和缩小, 但 JScrollPane
可以保持不变。
话虽如此,您不应该使用 setPreferredSize
,尤其是不要乱用 JTable
,JTable
会根据数据的需要计算自己的首选大小。 .而且它做得相当不错。
如果你想改变 JScrollPane
的大小,那么你需要改变 getPreferredScrollableViewportSize
的结果,这让 JScrollPane
知道一个组件需要多大的基本最佳条件下的可视区域
我正在程序中使用 JTable。问题是,当我设置整个 JTable 的大小时,我使用的是这种方法:
setPreferredScrollableViewportSize(Dimension size)
我的问题是,使用此方法时,您输入的宽度和长度(以像素为单位)。当程序在不同的 computers/machines 上 运行 时会出现问题(格式化方面)吗?
Should I avoid the use of set(Preferred|Maximum|Minimum)Size methods in Java Swing? - 简短的回答是肯定的(你应该避免它)
设置 table 的 preferredSize 时,您实际上并没有考虑 table 可能具有的行数或列数,这取决于布局管理器,它可能永远不会大于您提供的尺寸,无论数据量如何
The question I have is that when using this method, you enter in the width and length in pixels. Will there be issues (formatting-wise) when the program is run on different computers/machines?
一般来说,是的。
JTable
被设计为在 JScrollPane
内显示,这让您有一些余地,因为 JTable
可以在 JScrollPane
内增长和缩小, 但 JScrollPane
可以保持不变。
话虽如此,您不应该使用 setPreferredSize
,尤其是不要乱用 JTable
,JTable
会根据数据的需要计算自己的首选大小。 .而且它做得相当不错。
如果你想改变 JScrollPane
的大小,那么你需要改变 getPreferredScrollableViewportSize
的结果,这让 JScrollPane
知道一个组件需要多大的基本最佳条件下的可视区域