2016-03-25 15 views
1

Örneğin, ben hücrede değerin türü (Boole, tarih, vs.) gibiTableView setCellFactory

şey bağlı hücrelerin farklı türde birkaç sınıfları var that:

public class MyBooleanCell extends TableCell<MyData, Boolean> {...} 
public class MyDateCell extends TableCell<MyData, LocalDate> {...} 

Böyle bir şeyi nasıl yapabilirim (sözde kod örneği)?

colValue.setCellFactory(factory -> { 
    if (cellValueType != null) { 
     if (cellValueType instanceof Boolean) { 
     return MyBooleanCell; 
     } else if (cellValueType instanceof LocalDate) { 
     return MyDateCell; 
     } else { 
     //... 
     } 
    } 
}); 
+0

Neden kullanmıyorsunuz çift yönlü bağlanır? – JohnRW

+0

Ve hiçbir olay işleyicileri/dinleyicileri eklenmediyse '' Grafik '' atama 'Düğüm' öğelere bağlı olmalıdır ??????? Ayrıca bu 'cellValueFactory 'kodunu haklı çıkarmak için' FilterRow.filterValueProperty()' yi nasıl tasarladınız ??? – fabian

+0

@fabian, "FilterRow" sınıfının bir kısmını yayınlamak için ekleyin. SetCellFactory'deki 'Node' özelliği ile bağlanmalı mıyım? Kodun bu bölümünde nasıl bağlantı kurabilirim? –

cevap

-2

Görünürlük değerini yanlış ve doğru olarak ayarlayarak Tablo Görünümü'nü yenilemeyi deneyin.

tableView -> false tableView -> true

+0

Hayır, sorun ne olursa olsun, görünürlüğü değiştirmek bir çözüm değil ... – kleopatra