3

アプリケーションをアイコン化するために、ControlFX の Font Awesome サポートを使用することにしました。

コードと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>

動作させた後、アイコンの色も変更したいと思います。

4

1 に答える 1

5

1 つの JavaFX Button 要素に 2 つのグラフィックスが必要なようです。docsによると、これは不可能です。

ボタン コントロールには、テキストやグラフィックを含めることができます。

Button クラスのメソッドは、ボタンに設定できるグラフィックは最大でも 1 つだけであることも示しています。

'GEAR' と 'SEARCH' に固有のセマンティックな違いを考えると、2 つのボタンが必要になると思います。試す:

...
<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>
...
于 2016-11-26T02:24:43.757 に答える