2016-05-06 53 views
0
在TableView中另一行

假設,我想實現在JavaFX中TableView中的數據驗證。如何防止選擇JavaFX中

一旦用戶在該行中已經改變的數據,我想檢查一下當用戶試圖改變當前的行號。一旦數據正確,我想允許行更改,一旦數據不正確,我想禁止這個。

如何實現這個?

目前,我試圖添加監聽

getSelectionModel().selectedIndexProperty().addListener(indexFromTableToModel); 

但任何操作中它會導致不良表視圖行爲。使用

Platform.runLater 

使情況更好,但仍不完善。

有一個方便的地方,執行行數據驗證,並根據它執行不同的操作?

+0

不知道確切的答案可以在不知道你在你的聽衆不斷變化的給予,但我發現,有時候改變選擇指數前添加'#TableView中修復layout'故障的圖形(顯示爲選中一行,而另一個實際上是被改變等) – Itai

回答

2

您可以編寫能夠鎖定自己的選擇模型(如果當前值是無效)。在這種情況下,模型不會更改內部選定的索引。