最初の投稿@SO、ここに行きます。私はこれを広範囲に検索しましたが、適切な解決策に到達できなかったため、この質問を続行する必要がありました.
私は最近 JavaFX/Java の学習を開始したばかりで、他のいくつかの列とともに、単一の ProgressIndicator 列を持つテーブルを作成しようとしています。これは、ProgressIndicator をテーブル セル内に表示する必要があることを意味します。
これまでに行った作業: http://pastebin.com/raw.php?i=QxSmsJCT
@Override // This method is called by the FXMLLoader when initialization is complete
public void initialize(URL fxmlFileLocation, ResourceBundle resources) {
fileName.setCellValueFactory(new PropertyValueFactory<Table, String>("fileName"));
transferSpeed.setCellValueFactory(new PropertyValueFactory<Table, Double>("transferSpeed"));
piColumn.setCellValueFactory(new PropertyValueFactory<Table, Double>("piColumn"));
ProgressIndicatorTableCell pitc = new ProgressIndicatorTableCell();
piColumn.setCellFactory(pitc.<TableCell>forTableColumn());
transferTable.setItems(data);
}
class ProgressIndicatorTableCell<S> extends TableCell<S, Double> {
public <S> Callback<TableColumn<S, Double>, TableCell<S, Double>> forTableColumn() {
return new Callback<TableColumn<S, Double>, TableCell<S, Double>>() {
@Override
public TableCell<S, Double> call(TableColumn<S, Double> param) {
return new ProgressIndicatorTableCell<>();
}
};
}
}
他の列は完全に機能します (そして、私がフィードしたデータを表示します) が、ProgressIndicator がまったく表示されない理由を理解できません。
SOの思いやりのある回答者には、回答を「取得」するだけでなく、概念を明確に理解できるように、回答を少し詳しく説明してください。私のコードのロジックおよび/またはプロジェクト階層のセットアップ内のエラーと間違いを強調表示できれば、非常に高く評価されます。
ありがとう。