2012-01-09 47 views
2

有人能给我提供一个如何在JTable的单元格中显示HTML的例子吗?我知道这可以为其他Swing组件完成,但我似乎无法解决JTables的问题。在JTable中显示HTML

+2

[你有什么试过?](http://mattgemmell.com/2008/12/08/what-have-you-tried/)SO不是代码工厂。 – 2012-01-09 19:20:00

+0

你想在HTML中显示什么?默认的单元格渲染器是'JLabel',所以你可以通过将内容包装在''中来做一些基本的HTML。 – Paul 2012-01-09 19:20:18

+0

@AndrewThompson,你在说“我该怎么做X?”是不是一个有效的问题? SO并不是一个“正确的代码”工厂 - 常见问题解答说:“......如果您的问题通常涵盖特定的编程问题......如果您是在正确的地方提问您的问题!” **你可能想要每个问题的代码,但它不是必需的。 – Paul 2012-01-09 19:27:20

回答

6

您是否记得按<html>...</html>围绕HTML标记添加<html>JTable中的默认字符串渲染器使用JLabel,所以这应该起作用。只需将字符串设置为单元格值即可。

3

如何在Swing组件中使用HTML在Swing tutorial中描述。如果您将其与JTable tutorial结合使用,更具体地说与Editors and rendererscustom renderers相关的部分,您应该会得到相当的帮助。

总结所有这些链接:或者您的TableModel包含HTML格式的String实例,然后全部将与标准渲染器一起使用。否则,你可以调整渲染到模型值转换为一个HTML字符串,并显示那些在例如JLabel

0

其中,我有这个方法在我的单元格渲染器标签实现覆盖:

@Override 
    protected void firePropertyChange(String propertyName, Object oldValue, Object newValue) 
    { 
    // empty override for performance reasons. 
    } 

一旦我删除了覆盖,HTML渲染开始工作。