2009-09-20 27 views
23

Etiketlerden biri için daha büyük bir yazı tipi kullanmalıyım. Arial, her zaman varsayılan yazı tipi değildir. Sadece boyutu değiştirmek ve her şeyi varsayılan değerlerde tutmak istiyorum.Sadece yazı tipi boyutunu değiştirme SWT

label.setFontSize(14); 

gibi bir şey diğer parametreleri ayarlayarak önlemek için

ben yapabilir miyim? Ya da en azından varsayılan olarak kullanılan yazı tipinin adını öğrenebilir miyim?

cevap

35

Sana çalışması gerekir döndürülen birden fazla yazı, sürece

FontData[] fD = label.getFont().getFontData(); 
fD[0].setHeight(16); 
label.setFont(new Font(display,fD[0])); 

gibi bir şey yapabileceğini düşünüyoruz.

31

Aşağıdaki yapabilirsiniz:

FontData[] fontData = label.getFont().getFontData(); 
for(int i = 0; i < fontData.length; ++i) 
    fontData[i].setHeight(14); 

final Font newFont = new Font(display, fontData); 
label.setFont(newFont); 

// Since you created the font, you must dispose it 
label.addDisposeListener(new DisposeListener() { 
    public void widgetDisposed(DisposeEvent e) { 
     newFont.dispose(); 
    } 
}); 
+1

atmayın (resim) hiç mantıklı ve muhtemelen bir kopyalama ve yapıştırma hatadır – mkdev

İlgili konular