gpt4 book ai didi

java - 如何在 fxml 项目中使用很棒的字体 (javafx)

转载 作者:搜寻专家 更新时间:2023-10-30 19:51:56 26 4
gpt4 key购买 nike

我想在我的项目中使用 font font awesome 但我不知道如何在我的项目中使用 font awesome。

我找到了一些示例,但它们不能在 fxml 中使用。

font awesome javafx

我需要帮助如何使用 fxml 在我的项目中使用它

谢谢。

最佳答案

我通过调整 Jens Deters's approach 实现了使用 FA 图标.

他的例程以动态图形用户界面组合为目标,与 fxml 的声明方式相反。尽管如此,his AwesomeIcon enumeration (将 FA 可理解的名称映射到 unicode 字符)完全符合我的意图。

它应该从在 main/app 类中静态加载字体开始:

public class App extends Application {
static {
Font.loadFont(App.class.getResource("/font/fontawesome-webfont.ttf").toExternalForm(), 10);
}

@Override
public void start(final Stage primaryStage) throws Exception {
URL resource = getClass().getResource("/fxml/app.fxml");
primaryStage.setScene(new Scene((Parent) FXMLLoader.load(resource), 500, 500));
primaryStage.setTitle("FontAwesomeFX demo");
primaryStage.show();
}

public static void main(String... args){
launch(args);
}
}

不能在 fxml 中使用 unicode 字符(根据需要指定 FA 图标),但可以使用此类值动态设置属性。因此有了上面提到的枚举 (AwesomeIcon),工作就完成了:

  1. 导入:

    <?import de.jensd.fx.fontawesome.AwesomeIcon?>
  2. 节点:

    <Label styleClass="awesome"
    style="-fx-font-family: FontAwesome; -fx-font-size: 16.0;">
    <text><AwesomeIcon fx:constant="FILE"/></text>
    </Label>

我最终实现了一个图标小部件/控件/组件来恢复具有两个属性的代码量:

  1. 值:FA 图标名称;
  2. size:标签上样式 -fx-font-size 的样式属性。

新代码(效果相同):

<Icon value="FILE" size="16"/>

可以找到该控件的代码 here .您还可以找到一个工作示例,因为它包含字体和测试代码。

关于java - 如何在 fxml 项目中使用很棒的字体 (javafx),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24430121/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com