2013-07-20 201 views
2

我想將JLabel的字體設置爲自定義字體。讀取文件時不會拋出異常,但在撥打label.setText("string")時不會出現任何異常。文字出現在我註釋掉label.setFont(f)行時。任何人都知道我在做什麼錯了?此代碼位於JPanel類中。使用自定義字體

_mineLabel = new JLabel(); 

    _timeLabel = new JLabel(); 

    try { 
     Font f = Font.createFont(Font.TRUETYPE_FONT,new File("/Users/simon/Documents/workspace/Minesweeper/bin/minesweeper/DS-DIGI.TTF")); 
     GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); 
     ge.registerFont(f); 
     f.deriveFont(12f); 
     _mineLabel.setFont(f); 
     _timeLabel.setFont(f); 
    } catch(IOException e) { 
     e.printStackTrace(); 
    } catch(FontFormatException e) { 
     e.printStackTrace(); 
    } 
    this.add(_mineLabel); 
    this.add(_timeLabel); 
    _timeLabel.setText("test"); 
+2

嘗試'F = f.deriveFont(12F)' – nachokk

+0

感謝nachokk!那解決了它。 –

回答

2

改變這一行

f.deriveFont(12f); 

f=f.deriveFont(12f);