web-dev-qa-db-ja.com

JavaFXのfx:idとid:の違いは何ですか?

たぶん本当に初心者の質問....

このチュートリアルを読むことで、Scene Builderを使用してFMXLアプリケーションでJavaFXを学習し始めています。

http://docs.Oracle.com/javase/8/javafx/get-started-tutorial/fxml_tutorial.htm

そのため、いくつかの変更を適用すると、この2つのIDに関する問題が発生しました。

誰がどちらのケースで使用されているか教えてもらえますか?

39
Analyst

idを使用してコンポーネントにCSS IDを設定します。たとえば、<Text id="welcome-text" .../>で、スタイルシートには#welcome-text { font-size: 16pt; }のようなものがあるため、これが適用されますあなたのText

fx:idは、@FXML Text myWelcomeTextアノテーションを付けたControllerクラスでコンポーネントを操作する場合に使用します。

56
Patrick

Fx:idは、コントローラーを構築するためにfxmlのコンポーネントに関連付けられたIDであり、IDはcssに使用されます。

9
Lucas Z.

JavaFX Scene Builder を使用して生成されたFXMLドキュメントを確認しました。コントロールにアクセスするには、Java Controller with fx:idを使用します。(編集)修正済みです。IDは重要です。

次のようにFXMLドキュメントからcssを適用できます。

<Slider id="css_id" fx:id="myslider" styleClass="style_name" .../>

(スライダーを任意のコントロールに置き換えます)

そしてJavaコントローラーの相互作用:

@FXML
Slider myslider;
6
Cobbles

JavaFXでは、idを使用してCSS IDをコンポーネントに設定します。そして、fx:idは、コード(つまり、コントローラークラス)でそのコンポーネントにアクセスするために使用されます。 fx:idは、コンポーネント名のように機能します。

1
Amita Patil