Добавить иконы в JButton, используя пользовательский шрифт от AwesomeFont и Unicode персонажей в Java Swing?

StackOverflow https://stackoverflow.com//questions/9639894

Вопрос

У меня есть jbutton, и я хочу добавить икону на него.Я хотел бы использовать значки на основе шрифтов из FONAWESOME, который предоставляет файл шрифта TrueType.Икона, которую я пытаюсь добавить, - это значок кнопки воспроизведения.Значок кнопки воспроизведения в файле CSS для Fontawesome является \f04b, который я верю, переводит в \uf04b в Java.

Вот как я загружаю шрифт в конструкторе класса базового класса iconbutton.

public class IconButton extends JButton {
  public IconButton() {
    try {
      InputStream in = this.getClass().getResourceAsStream("/fontawesome-webfont.ttf");
      Font ttfBase = Font.createFont(Font.TRUETYPE_FONT, in);
      Font ttfReal = ttfBase.deriveFont(Font.BOLD, 24);
      setFont(ttfReal);
    } catch (FontFormatException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
  }
}
.

в реализации класса StartButton Вот как я устанавливаю текст.

public class StartButton extends IconButton {
  public StartButton() {
    setText(String.valueOf('\u0f4b'));
    setForeground(Color.BLACK);
  }
}
.

Это то, что я получаю.Ничего.

jbutton

Любая помощь очень ценится.

Редактировать: см. Ответ ниже.

Это было полезно?

Решение

Я думаю, что я решил это на самом деле.Правильный персонаж - генеракодицетагкод, а не генеракодицетагкод.Упс!:)

Это работает для меня сейчас.

jbutton с значком игры

Другие советы

попробуйте JiConfont (Swing или Javafx) в http://jiconfont.github.io/ >

Пример:

Icon icon = IconFontSwing.buildIcon(FontAwesome.FLOPPY_O, 15);

JButton button = new JButton(icon);
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top