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

1 回答 1

2

更改此行

    f.deriveFont(12f);

 f=f.deriveFont(12f);
于 2013-07-20T03:16:40.087 回答