Java 如何使用Twistie设置SWT节标题的样式?

Java 如何使用Twistie设置SWT节标题的样式?,java,css,swt,eclipse-rcp,jface,Java,Css,Swt,Eclipse Rcp,Jface,我正试图通过CSS为EclipseRCP应用程序的部分设计一个标题 toolkit.createSection(body, Section.TITLE_BAR); 创建一个部分而不创建部分。TWISTIE我可以简单地设置部分的样式颜色: Section { color: #00ff00; } 我一添加部分.TWISTIE,颜色就不再使用了: toolkit.createSection(body, Section.TWISTIE | Section.TITLE_BAR); 因此,我开始了一些

我正试图通过CSS为EclipseRCP应用程序的
部分设计一个
标题

toolkit.createSection(body, Section.TITLE_BAR);
创建一个
部分
而不创建
部分。TWISTIE
我可以简单地设置
部分的样式
颜色:

Section { color: #00ff00; }
我一添加
部分.TWISTIE
,颜色就不再使用了:

toolkit.createSection(body, Section.TWISTIE | Section.TITLE_BAR);
因此,我开始了一些调试,并在
FormColors
中找到了这一点:

private void createTwistieColors() {
    RGB rgb = getColor(IFormColors.TITLE).getRGB();
    RGB white = getSystemColor(SWT.COLOR_WHITE);
    createColor(TB_TOGGLE, rgb);
    rgb = blend(rgb, white, 60);
    createColor(TB_TOGGLE_HOVER, rgb);
}
iFormColor.TITLE
是在
createTitleColor()
中创建的:

没有使用CSS,如何更改节标题的颜色

示例用户界面:


我找到了一个解决方案,但仍然希望有一个仅限于CSS的解决方案:

FormColors colors = new FormColors(parent.getDisplay()) {
    @Override
    public void initializeSectionToolBarColors() {
        super.initializeSectionToolBarColors();
        // override createTwistieColors() declaration with own color
        RGB rgb = new RGB(80, 80, 80);
        RGB white = getSystemColor(SWT.COLOR_WHITE);
        createColor(IFormColors.TB_TOGGLE, rgb);
        rgb = blend(rgb, white, 60);
        createColor(IFormColors.TB_TOGGLE_HOVER, rgb);
    }
};
toolkit = new FormToolkit(colors);

EclipseCSS代码只调用普通类中的各种方法。如果没有设置颜色的方法,CSS就无法进行设置。
FormColors colors = new FormColors(parent.getDisplay()) {
    @Override
    public void initializeSectionToolBarColors() {
        super.initializeSectionToolBarColors();
        // override createTwistieColors() declaration with own color
        RGB rgb = new RGB(80, 80, 80);
        RGB white = getSystemColor(SWT.COLOR_WHITE);
        createColor(IFormColors.TB_TOGGLE, rgb);
        rgb = blend(rgb, white, 60);
        createColor(IFormColors.TB_TOGGLE_HOVER, rgb);
    }
};
toolkit = new FormToolkit(colors);