みんな、助けが必要です: ListView> コンポーネントに、基礎となる dataModel (ObservableList> tests = FXCollections.observableList(list)) のクラスの .toString (または同様のもの) を表示させたいということです。
だからJavaで:
public class KinderNonStandard extends SeleneseTestCase {
@Before
public ... {}
@Test
public ... {}
@After
public ... {}
@Override
public String toString() {
return "I want this string to be shown at presentation layer of listView<T>";
}
}
で、〜がある:
public class TestWindowController implements Initializable{
@FXML private ListView<Class<? extends SeleneseTestCase>> availableTests;
@Override
public void initialize(URL location, ResourceBundle resources) {
//list contains classes like KinderNonStandard (extends SeleneseTestCase...)
ObservableList<Class<? extends SeleneseTestCase>> tests = Collections.observableList(list);
availableTests.setItems(tests);
}
}
最後に、アプリケーションを実行すると、ListView に、そのクラスの toString でオーバーライドされたものではなく、「class package.subpackage.KinderNonStandard」のようなものが表示されます。まあ、私はマップを使用して、キーを文字列として、値を基になるデータモデル クラスとして操作することにあまり慣れていません。それで、オーバーライドされた toString メソッドを表示するためにどうにかして管理できますか?
手伝ってくれてありがとう!