2014-03-19 94 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)。也许它会帮助 –

相关问题