2014-12-09 5 views
3

Я знаю, что следующая проблема немного проблемы роскоши:Набора заполнитель из JavaFX TableView в FXML

Я хотел бы сохранить Initialize моего FXML контроллера настолько чистым, насколько это возможно, и поэтому я хотел бы установить заполнитель моего TableView в файле FXML (так как я считаю, что это лучшее место для его хранения, потому что это просто свойство, а в моем случае также константа). Я уже пытался установить его в файле FXML, как это:

<TableView placeholder="Some text"> 

Это, очевидно, не работает, потому что свойство заполнитель ожидает узла. Именно поэтому я поставил заполнитель, как это в Initialize контроллера FXML:

Label placeholder = new Label(); 
placeholder.setText("Some text"); 
tableview.setPlaceholder(placeholder); 

Это работает, но как я уже сказал, я хотел бы управлять этим только из файла FXML. Некоторые из моих вопросов:

Как я могу установить заполнитель из файла FXML?

Примечание: пожалуйста, дайте мне знать, если это возможно, потому что, когда это не так, я заполню запрос функции (с низким приоритетом, конечно!).

ответ

10

Довольно просто, обычный FXML Синтаксис:

<BorderPane xmlns:fx="http://javafx.com/fxml/1"> 
<center> 
    <TableView> 
     <placeholder> 
      <Label text="some text"/> 
     </placeholder> 
    </TableView> 
</center> 

Примечание: Не все примитивное значение (может быть выражено инлайн) и, следовательно, необходим свой элемент.

+0

Спасибо, что ответили так быстро. Хотя, это то же самое, что я уже нашел, конечно, я дам вам все кредиты! – bashoogzaad

2

я уже нашел ответ на этот вопрос с помощью: Styling a JavaFX 2 button using FXML only - How to add an image to a button?

Графического запускаемого тега идеи сделать это следующим образом:

<TableView> 
    <placeholder><Label text="Some Text"></Label></placeholder> 
</TableView> 

И, к счастью, это работает! Надеюсь, я тоже помог некоторым из вас. Кроме того, извините за то, что вы задали этот вопрос слишком быстро.

+0

Итак, вы нашли это на несколько секунд раньше, чем я закончил свой ответ :) – eckig

Смежные вопросы