如何将JTable列的大小调整为字符串长度?

如何将JTable列的大小调整为字符串长度?,第1张

如何将JTable列的大小调整为字符串长度

您对字符串的长度(也不是对特定字体/度量的映射)并不真正感兴趣。您对renderingComponent的preferredSize感兴趣,renderingComponent渲染单元格内容。为此,请遍历所有行并查询大小,例如

 int width = 0; for (row = 0; row < table.getRowCount(); row++) {     TableCellRenderer renderer = table.getCellRenderer(row, myColumn);     Component comp = table.prepareRenderer(renderer, row, myColumn);     width = Math.max (comp.getPreferredSize().width, width); }

或使用JXTable(在SwingX项目中):它有一个方法pack()为您工作:-)

编辑:与在渲染器上手动调用getXXRendererComponent相比,偏爱表的prepareRenderer的原因是,该表可能确实装饰了renderComponent的视觉属性。如果这些装饰影响了组件的prefSize,则关闭手动配置。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5586521.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存