Java 试图通过html向jface tableviewer添加基本的富文本支持?

Java 试图通过html向jface tableviewer添加基本的富文本支持?,java,html,eclipse-rcp,jface,Java,Html,Eclipse Rcp,Jface,因此,我正在尝试向jface tableviwer添加基本的富文本支持,如粗体、下划线、斜体和高光,并且还需要能够将其保存到模型中,因此我认为一个好方法是使用html(或xml)标记的子集。然而,我似乎找不到在tableviewer中呈现html的方法。我看过StyledCellLabelProvider,但它的StyledRange似乎只支持前景色和背景色,而不支持字体和类型。看看StyleRange的所有公共字段。除了前景色和背景色还有很多。提示:它们继承自org.eclipse.swt.g

因此,我正在尝试向jface tableviwer添加基本的富文本支持,如粗体、下划线、斜体和高光,并且还需要能够将其保存到模型中,因此我认为一个好方法是使用html(或xml)标记的子集。然而,我似乎找不到在tableviewer中呈现html的方法。我看过StyledCellLabelProvider,但它的StyledRange似乎只支持前景色和背景色,而不支持字体和类型。

看看
StyleRange
的所有公共字段。除了前景色和背景色还有很多。提示:它们继承自
org.eclipse.swt.graphics.TextStyle

您不能在表查看器中呈现HTML,因为这需要在swt
表中呈现HTML,这需要在所有支持的平台和窗口系统的表中呈现本机HTML。

StyledCellLabelProvider
调用的
TextLayout
类用于绘制文本,它不使用
StyleRange
而是使用其超类
TextStyle
fontStyle
不是
TextStyle
的属性,因此它被忽略。明确设置
TextStyle.font

感谢您对该设置的输入。前景色和背景色很有魅力,但字体样式没有。我可以通过
cell.setFont(boldFont)
将整个单元格内容设置为粗体,但如果我尝试在某个范围内进行类似操作,则只需忽略粗体位,即StyleRange(0、4、null、colorYellow、SWT.bold)一点点stumbled(windows 7和os x)。
注意:如果设置了字体属性,则不使用字体样式。
您尝试过设置字体吗(不是fontStyle)在
样式范围上
?我明白了,但我只需要支持一个子集平台,而且我知道SWT浏览器小部件肯定能在这些平台上工作。当然我实现了扩展表类?@dead\u zero问题是,
类本身做的工作很少。所有渲染都是由本机控件完成的:Win32 table,Cocoa table,Gnome表等,您不能扩展它们。