Подтвердить что ты не робот

Какая разница между fx: id и id: в JavaFX?

Возможно, действительно вопрос новичков....

Я начинаю изучать JavaFX в приложении FMXL с помощью Scene Builder, читая это руководство:

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

Итак, как только я применил некоторые изменения, проблема с этими двумя идентификаторами возникла... Возможно, я пропустил или смутил что-то о них...

Может ли кто-нибудь сказать мне, в каких случаях они используются так или иначе?

4b9b3361

Ответ 1

id вы используете для установки идентификатора CSS для своего Компонента, например <Text id="welcome-text" .../>, а в вашей таблице стилей у вас есть что-то вроде #welcome-text { font-size: 16pt; }, поэтому это будет применено к вашему Text.

fx:id вы используете, если хотите работать со своими Компонентами в своем классе Controller, где вы комментируете их с помощью @FXML Text myWelcomeText.

Ответ 2

fx: id - это идентификатор, связанный с компонентом в fxml, для построения контроллера, а id используется для css.

Ответ 3

Я взглянул на документ FXML, созданный с помощью JavaFX Scene Builder. Вы получаете доступ к элементам управления с Java Controller с идентификатором fx: id. (edit) Я стою исправлено, id имеет значение.

Вы можете применить css из документа FXML следующим образом:

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

(Заменить ползунок любым элементом управления)

И взаимодействие с контроллером Java:

@FXML
Slider myslider;

Ответ 4

В JavaFX id используется для установки идентификатора CSS для компонента. И fx:id используется для доступа к этому компоненту в коде (т.е. В классе контроллера). fx:id работает как имя компонента.