[英]JavaFX parameterized editable tableview
我試圖將可編輯表添加到我的項目中,並且發現此代碼為我要嘗試的操作提供了輪廓。 但是,它沒有參數化,這似乎可以使它起作用(我的代碼不斷給我鍵入錯誤)。 有沒有一種方法可以對此進行參數化,或者在這種情況下可以使用原始類型?
最好對TableView
和TableColumn
進行參數化。
您鏈接的代碼有些“遺留”,因為它使用原始類型,並且不使用諸如TextFieldTableCell
類的輔助單元格類。
TextFieldTableCell
提供了一個靜態的forTableColumn(...)
方法,該方法采用StringConverter<T>
並返回一個Callback
,該Callback
可用作TableColumn<S,T>
的cellFactory
。 StringConverter<T>
僅提供用於將輸入到TextField
的String
轉換為T
以及將T
轉換為要在單元格中顯示的String
的方法。
為數字類型提供了標准的StringConverter
,例如IntegerStringConverter
和DoubleStringConverter
。
嘗試以下方法:
TableView<MyDataType> table = new TableView<>();
TableColumn<MyDataType, Integer> intColumn = new TableColumn<>("Int Column");
intColumn.setCellFactory(TextFieldTableCell.forTableColumn(new IntegerStringConverter()));
TableColumn<MyDataType, Double> doubleColumn = new TableColumn<>("Double Column");
doubleColumn.setCellFactory(TextFieldTableCell.forTableColumn(new DoubleStringConverter()));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.