Java StyledText,用不同字体追加文本?

Java StyledText,用不同字体追加文本?,java,fonts,formatting,swt,styledtext,Java,Fonts,Formatting,Swt,Styledtext,我是Java新手,想知道如何设置要添加到SWT StyledText框的下一个文本所使用的字体和字体颜色 例如,我有一个应用程序,它定义了“命令”和“数据”文本,每个文本都将以不同的字体/颜色显示。假设我刚刚添加了一些“命令”文本。现在我该如何设置,以便下一个文本(即“数据”文本)以不同的字体和颜色显示 我用谷歌搜索了很多次,但似乎没有任何帮助 附言:这不是最有效的方法: int a = st.getCharCount(); Font font = new Font(shlProtruleMo

我是Java新手,想知道如何设置要添加到SWT StyledText框的下一个文本所使用的字体和字体颜色

例如,我有一个应用程序,它定义了“命令”和“数据”文本,每个文本都将以不同的字体/颜色显示。假设我刚刚添加了一些“命令”文本。现在我该如何设置,以便下一个文本(即“数据”文本)以不同的字体和颜色显示

我用谷歌搜索了很多次,但似乎没有任何帮助

附言:这不是最有效的方法:

int a = st.getCharCount();

Font font = new Font(shlProtruleModifier.getDisplay(), "Courier", 10, SWT.NORMAL);

StyleRange[] sr = new StyleRange[1];

sr[0] = new StyleRange();

st.append("\r\nWhat the heck?");

sr[0].start = a;
sr[0].length = st.getCharCount() - a;
sr[0].font = font;
sr[0].foreground = SWTResourceManager.getColor(SWT.COLOR_BLACK);

st.replaceStyleRanges(sr[0].start, sr[0].length, sr);
int a = st.getCharCount();

Font font = new Font(shlProtruleModifier.getDisplay(), "Courier", 10, SWT.NORMAL);

StyleRange[] sr = new StyleRange[1];

sr[0] = new StyleRange();

st.append("\r\nWhat the heck?");

sr[0].start = a;
sr[0].length = st.getCharCount() - a;
sr[0].font = font;
sr[0].foreground = SWTResourceManager.getColor(SWT.COLOR_BLACK);

st.replaceStyleRanges(sr[0].start, sr[0].length, sr);

所以我所能想到的就是下面的技术


所以我所能想到的就是下面的技术