2014-03-19 133 views
1

我正在實現多行標籤圖。我想更改文本流或標籤中的字體大小

我有一個問題。

如何更改textflow的字體大小?

在我改變了fontdata的高度值之前,我嘗試了方法[textflow.setFont]。

使用此代碼,Font tFont = m_Textflow.getFont(); FontData[] tFontDataList = tFont.getFontData(); tFontDataList[0].setHeight(aSize); m_Textflow.setFont(new Font(null, tFontDataList[0]));

但是,這並不能正常工作,並就頭部的任何空間。

請幫我T^T

回答

1

the Font API。你會發現構造

Font(String name, int style, int size) -

從指定的名稱,樣式和大小創建一個新的字體。

所以你可以做這樣的事情

String family = textFlow.getFont().getFamily(); 
int style = textFlow.getFont().getStyle(); 
int theNewFontSize = 30; 
textFlow.setFont(new Font(family, style, theNewFontSize)); 
+0

感謝您的評論:) 「textFlow.getFont()」 返回org.eclipse.swt.graphics.Font類型。而且我不能使用thoes方法T^T 所以我試着像你的代碼。 'Font tFont = m_Textflow.getFont(); FontData [] tFontDataList = tFont.getFontData(); String tFontName = tFontDataList [0] .getName(); int tFontStyle = tFontDataList [0] .getStyle(); m_Textflow.setFont(new Font(Workbench.getInstance()。getDisplay(),tFontName,aSize,tFontStyle));' 但它不能正常工作。 – Heizel

+0

對不起,我以爲你在使用Swing/AWT。我不熟悉SWT –

+0

請參見[this](http://stackoverflow.com/a/1449986/2587435)。也許它會幫助 –

相關問題