Java SWT 链接小部件 - 如何去掉超链接下划线?

3

我知道我们可以使用:

setText("<a> href="url"> Link </a>");

建立一个链接。 但是输出结果是有下划线的。

我希望有一个没有下划线的链接, 所以我尝试了

setText(<a> href="url" style="text-decoration: none" Link </a>);

但是它仍然无法运行。 需要帮助吗?
2个回答

4

很抱歉,您不能去掉下划线。它是使用TextLayout类内部绘制的,没有办法影响其行为。顺便说一下,文本小部件的HTML代码仅用于解析。实际上,Link小部件没有HTML支持。这就是为什么style属性不起作用的原因。但是,您可以使用StyledText小部件进行更高级的文本布局。


3

补充一下 Tobias Willig 的答案,如果你正在使用 JFace 和 Forms,则可以使用 org.eclipse.ui.forms.widgets.Hyperlink 及其 setUnderlined()。你可以在这里看到一个工作示例:自定义组件


刚试了一下,我觉得不太适合。因为我现在使用的 Link Widget 可以创建一个单独的链接,并在正常文本中同时显示多个超链接。 - Morty Choi
@user2215977 - 这只是一种备选方法,使用适当的API可以隐藏下划线。 - Favonius

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接