Fabryka komórek w javafx
Używam JavaFx 2.0 i Java 7. Pytanie dotyczy widoku tabeli w JavaFX.
Poniższy przykładowy kod tworzy kolumnę firstName i przypisuje do niej fabrykę komórek i fabrykę wartości komórki.
<code>Callback<TableColumn, TableCell> cellFactory = new Callback<TableColumn, TableCell>() { public TableCell call(TableColumn p) { return new EditingCell(); } }; TableColumn firstNameCol = new TableColumn("First Name"); firstNameCol.setCellValueFactory( new PropertyValueFactory<Person,String>("firstName") ); firstNameCol.setCellFactory(cellFactory); </code>
Moim wymaganiem jest posiadanie kolumny, która nie mapuje bezpośrednio do pojedynczego atrybutu w obiekcie Person, ale jest wartością niestandardową utworzoną przez konkatenację jednego lub więcej atrybutów obiektu Person.
Rozważmy scenariusz, w którym mam kolumnę tabeli o nazwie Pełna nazwa, która będzie miała wartości Przedrostek + Nazwisko + „,” + Imię.
1) W tym scenariuszu, jak napiszesz fabrykę wartości komórki?
<code>firstNameCol.setCellValueFactory( new PropertyValueFactory<Person,String>(???????) ); </code>
2) Jak napiszesz fabrykę komórek?
Czy w tym scenariuszu musimy wdrożyć zarówno fabrykę wartości komórek, jak i fabrykę komórek, czy jakakolwiek jest wystarczająca? Jeśli jeden jest wystarczający, to który?
Dzięki