使用StyledCellLabels时,TreeViewer不再正确调整大小

时间:2013-08-15 17:52:32

标签: swt width jface treeviewer

我正在使用JFace TreeViewer一段时间。 它有一堆不同长度的分支,但在一天结束时,整个树伸展到最长的字符串大小。这很棒。

最近,我决定TreeItems标签应该有一些字体和高亮的样式。

麻烦的是,新字体有点大,并且扩展了整个字符串的大小。似乎TreeTreeViewer无法识别此扩展,仍会根据其中的小字符数判断标签的大小。结果是我得到一个带有水平滚动条的TreeViewer,这非常不方便,因为现在我的用户必须滚动每棵树,而不是仅仅快速浏览数据。

有谁知道如何让Tree正确地适应最长字符串的长度,并考虑到样式的增加长度等?

谢谢!

1 个答案:

答案 0 :(得分:0)

虽然这不是一个完整的答案,但我希望它能帮助慢慢找到对此有更多高级知识的人的记忆:

当我将ViewerCell对象的字体设置为宽的字体时,整个行都会正确调整大小。树似乎通过检查文本和字体的长度来测量其宽度,但忽略Style Ranges