如何在 JFace 菜单标签中转义 '@' 字符
How to escape '@' char in JFace menu labels
我们正在使用 JFace 菜单管理器。我们的一些菜单项包含 @
个字符。例如,如果我们将电子邮件显示为菜单项列表。
当我们这样做时,菜单不会按原样显示 @
字符,而是会引入一个 space,如下所示。
创建菜单项的代码如下:
IMenuManager mgr = ...
mgr.add( new Action( "dataloader.dev@datasert.com" ) {
@Override
public void run() {
// Action run
}
} );
我的问题是,我们如何转义 @
字符?
通常,特殊字符可以通过复制来转义。然而,在这种情况下,JFace 中似乎有一个错误(或功能?)阻止了这一点。
正如评论中所建议的那样,唯一的解决方法似乎是在菜单标签的末尾附加一个 @
字符。应用此技巧后,菜单标签将正确显示。仅在标签右侧添加了一些额外的space。
我们正在使用 JFace 菜单管理器。我们的一些菜单项包含 @
个字符。例如,如果我们将电子邮件显示为菜单项列表。
当我们这样做时,菜单不会按原样显示 @
字符,而是会引入一个 space,如下所示。
创建菜单项的代码如下:
IMenuManager mgr = ...
mgr.add( new Action( "dataloader.dev@datasert.com" ) {
@Override
public void run() {
// Action run
}
} );
我的问题是,我们如何转义 @
字符?
通常,特殊字符可以通过复制来转义。然而,在这种情况下,JFace 中似乎有一个错误(或功能?)阻止了这一点。
正如评论中所建议的那样,唯一的解决方法似乎是在菜单标签的末尾附加一个 @
字符。应用此技巧后,菜单标签将正确显示。仅在标签右侧添加了一些额外的space。