Моя цель состоит в том, чтобы представить это:Создание динамического пользовательского элемента управления в JavaFX
Это GridPane
3 колонки:
- Первый Колум содержит
Label
что имя файла, который я только что открыл - Вторая колонка содержит
TextField
для представления т частота обновления - Третий Колум содержит
CheckBox
и 2Button
Если пользователь открывает файл, я должен добавить строку в этом таможенном контроле, если нет файла открыт, GridPane
пуст. я начинаю свой код с этим:
класс управления
package view.component.fileView;
import javafx.scene.control.Control;
import javafx.scene.control.Skin;
public class FileViewGrid extends Control{
@Override
protected Skin<?> createDefaultSkin(){
return new FileViewGridSkin(this);
}
}
класс кожи
package view.component.fileView;
import javafx.scene.control.SkinBase;
import javafx.scene.layout.GridPane;
public class FileViewGridSkin extends SkinBase<FileViewGrid>{
protected FileViewGridSkin(FileViewGrid control) {
super(control);
// TODO Auto-generated constructor stub
}
}
Но тот факт, что линии добавляются динамически запутать меня. Если бы это было статично, я добавлю все свои элементы в свой класс skin и их поведение в классе управления, но сейчас это мне не представляется возможным.
Это правильный способ сделать это? Должен ли я использовать метод FXML для создания элемента управления custome?
Как вы могли бы разместить 3 ячейки подряд? –
Вы должны установить пользовательский CellFactory в свой список http://java-buddy.blogspot.fr/2013/05/implement-javafx-listview-for-custom.html, который вы можете поместить в ячейку. –
Я, наконец, обратил внимание на ваш ответ, но в вашем коде есть некоторые проблемы. В ближайшее время я предложу обновление вашего сообщения. –