为了图示化我的应用程序,我决定使用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>
我想在工作后改变图标的颜色。
答案 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>
...