RCP应用程序/ SWT标签BOLD

时间:2017-04-18 08:54:17

标签: java swt rcp

这是一个RCP应用程序,你有一个(a)名称列表,它是通过FOR循环下载的。

也就是说它们是菜单项,它们位于屏幕左侧及其各自的层(复合)。

现在,这很有用,难点/这里需要的是当你双击一个项目时它会收到一个" SWT.BOLD"字符,当您单击另一个项目时,前一个项目接收SWT.NONE和所选的一个SWT.BOLD。 一个高度的启示....

此处代码:

for (int i = 0; i < 2; i++) {
        final Label l1 = neueLabel(shell, "label "+i, i);
        l1.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseDoubleClick(MouseEvent e) {
                if(e.button==1)
                    l1.setFont(SWTResourceManager.getFont("Segoe UI", 9, 
                               SWT.BOLD));
            }
        });
    } 

1 个答案:

答案 0 :(得分:0)

您需要保存当前突出显示的标签并重置其字体。假设您的班级有private Label current;,您的覆盖方法可能看起来像

if (e.button == 1) {
    if (current != null)
        current.setFont(SWTResourceManager.getFont("Segoe UI", 9, SWT.NONE));
    l1.setFont(SWTResourceManager.getFont("Segoe UI", 9, SWT.BOLD));
    current = l1;
}