如何在swing框架中调整数据库表?

时间:2012-08-22 04:49:25

标签: java swing jtable

我正在尝试调整JTable中列的宽度。 我需要在程序运行时调整它们的大小以查看完整的列标题名称。 我想调整在swing框架中显示的数据库表。

我试过了

table.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS)

但是我没有得到所需的输出,因为当我使用它时,我有一个水平滚动条滚动到屏幕外的列。但我希望整个表格的大小大致等于框架的大小。

如何使列尽可能宽,以显示所有文本?

1 个答案:

答案 0 :(得分:4)

  

但我希望整个表的大小大致等于帧的大小。

JTable table = ...;
JFrame frame = ...;
JPanel contentPane = new JPanel( new BorderLayout() );
contentPane.add( new JScrollPane( table ), BorderLayout.CENTER );
frame.setContentPane( contentPane );
  

如何使列尽可能宽,以显示所有文本?

不幸的是,JTable的最大宽度将限制为JFrame的大小,并且没有机制可以将JTable所需的宽度推送到{{ 1}}当JFrame包含JTable时。{/ p>

您可以尝试为JScrollPane提供正确的宽度。我没试过这个,但是我怀疑给你的滚动窗格宽度和桌子的首选宽度相同(当自动调整大小时)应该解决这个问题(+可能是垂直滚动条的一些额外宽度)。但请注意,只有在您允许包含JScrollPane的{​​{1}}宽度增加的情况下,此功能才有效。