2012-01-31 39 views
1

我是Java新手,想知道如何設置字體和字體顏色以用於將下一個文本添加到SWT StyledText框Java StyledText,用不同的字體附加文本?

因此,例如我有一個應用程序定義了「命令」和「數據」文本,每個文本都以不同的字體/顏色顯示。假設我剛剛添加了一些「命令」文本。現在我該如何設置,以便下一個文本「數據」文本以不同的字體和顏色顯示?

我做了大量的谷歌搜索,但似乎沒有任何幫助。

PS:這不可能是最有效的方式做到這一點:

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); 
+1

這是做到這一點的方法:-) – 2012-03-19 12:18:37

回答

1

因此,所有我已經能夠想出以下技術,做工作,

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);