如何在Java中对运行时包含特定文本的JTable行进行粗体或着色

时间:2017-05-03 05:55:46

标签: java swing jtable defaulttablemodel

我有一个JTable,可以从数据库中检索和显示数据

显示数据如下JTable enter image description here

在第二列中的上图中有大量TOTAL和第一列Grand Total。我的问题是,我想使包含TOTALGrand Total列的列整行必须是粗体或任何彩色底色,以使其更具特色。

请帮助

1 个答案:

答案 0 :(得分:1)

目前看起来您的表将所有数据存储为String数据,因此创建自定义渲染器的建议可行。

但是,对于所有数据使用字符串都没有意义。我看到许多列都带有数字,包括Integer和Double值。在这些列中,数据应存储为Integer和Double,因此可以使用适当的渲染器来显示数据。

在这种情况下,您现在需要创建多个渲染器以突出显示数据行。

对于替代方法,您可以自定义表的prepareRenderer(...)方法以进行行突出显示。此方法不关心数据,因此只需要在一个地方使用逻辑。

查看Table Row Rendering了解此方法的工作示例。