ListView では javadoc にもあるように、ListView<String> という形で String 型のものを要素として第一に想定していますが、
もちろん、それ以外の独自のクラスを指定することも可能です。その際に一番簡単な方法は次の通り。
例として独自の Item クラスというのを ListView で扱いたい場合、
・ObservableList<Item> を ListView<Item> に setItems() で設定する
・リストに表示される文字列は Item クラスの toString に実装
実装イメージを書くとこんな感じになります。
// ListView 側
@FXML
private ListView<Item> itemListView;
(略)
ObservableList<Item> items = FXCollections.observableArrayList();
// items に項目を追加する処理
itemListView.setItems(items);
// Item 側
public class Item{
private String itemName;
@Override
public String toString() {
return itemName;
}
0 件のコメント:
コメントを投稿