web-dev-qa-db-fra.com

Quelle est la différence entre fx: id et id: dans JavaFX?

Peut-être une question vraiment novice ...

Je commence à apprendre JavaFX dans une application FMXL à l'aide de Scene Builder, en lisant ces tutoriels:

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

Donc, une fois que j'ai appliqué quelques modifications, un problème avec ces 2 ID est apparu ... J'ai peut-être manqué ou confondu quelque chose à leur sujet ...

Quelqu'un peut-il me dire dans quels cas ils sont utilisés l'un ou l'autre?

39
Analyst

id vous utilisez pour définir un CSS ID à votre composant, par exemple <Text id="welcome-text" .../> et dans votre feuille de style, vous avez quelque chose comme #welcome-text { font-size: 16pt; } donc ceci sera appliqué à votre Text.

fx:id vous utilisez si vous souhaitez travailler avec vos composants dans votre classe Controller, où vous les annotez avec @FXML Text myWelcomeText.

56
Patrick

Fx: id est l'identité associée au composant dans fxml pour créer un contrôleur, et l'id est utilisé pour css.

9
Lucas Z.

J'ai jeté un coup d'œil à un document FXML généré à l'aide de JavaFX Scene Builder . Vous accédez aux contrôles à partir de Java Controller avec le fx: id. (Edit) Je me tiens corrigé, l'id importe.

Vous pouvez appliquer le CSS du document FXML comme ceci:

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

(Remplacez le curseur par n'importe quel contrôle)

Et Java interaction du contrôleur:

@FXML
Slider myslider;
6
Cobbles

Dans JavaFX id est utilisé pour définir un ID CSS pour un composant. Et fx:id est utilisé pour accéder à ce composant dans le code (c'est-à-dire dans une classe de contrôleur). fx:id fonctionne comme un nom de composant.

1
Amita Patil