ControlsFX字体很棒,不显示图标

时间:2016-06-02 14:06:12

标签: javafx-8 font-awesome fxml controlsfx

为了图示化我的应用程序,我决定使用ControlFX的Font awesome支持。

我尝试在Code和FXML中使用它,结果只用于" GEAR"有效的图标。

那么,是什么让其他图标无法显示?

她是FXML文件的代码:

<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.control.Button?>
<?import javafx.scene.layout.AnchorPane?>


<?import org.controlsfx.glyphfont.Glyph?>
<fx:root maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" type="AnchorPane" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="testController">
   <children>
      <Button mnemonicParsing="false" text="Button" >
          <graphic>
            // The Gear icon works perfectly 
            <Glyph fontFamily="FontAwesome" icon="GEAR"/>  
            <Glyph fontFamily="FontAwesome" icon="SEARCH"/>
          </graphic>
      </Button>
   </children>
</fx:root>

我想在工作后改变图标的​​颜色。

1 个答案:

答案 0 :(得分:4)

您似乎想在一个JavaFX Button元素中使用两个图形。根据{{​​3}},这是不可能的。

  

按钮控件可以包含文本和/或图形。

Button类&#39;方法还表明,最多只能将一个图形设置为按钮。

鉴于GEAR&#39;之间存在固有的语义差异。和&#39; SEARCH&#39;,我相信你可能需要两个按钮。尝试:

...
<children>
    <Button mnemonicParsing="false" text="Button" >
        <graphic>
            // the gear graphic
            <Glyph fontFamily="FontAwesome" icon="GEAR"/>  
        </graphic>
    </Button>
    <Button mnemonicParsing="false" text="Search" >
        <graphic>
            // the search graphic
            <Glyph fontFamily="FontAwesome" icon="SEARCH"/>
        </graphic>
    </Button>
</children>
...