2017-10-30 1 views

Antwort

0

Zuerst ein Kommentar zu Ihrem Problem. Die Sortierung von Zahlen und Daten funktioniert in NatTable sehr gut. Tatsächlich funktioniert die Sortierung aller Comparable Datentypen mit der DefaultComparator, die von der DefaultSortConfiguration angewendet wird. Damit es jedoch richtig funktioniert, müssen Sie die entsprechenden Datentypumsetzer registrieren, wie in verschiedenen NatTable-Beispielen gezeigt. Ohne den Konverter werden alle Daten in NatTable als String behandelt, was zu einer "falschen" Sortierung führt.

Zweitens zu Ihrer Frage. Sie können einen benutzerdefinierten Komparator wie folgt registrieren:

configRegistry.registerConfigAttribute(
    SortConfigAttributes.SORT_COMPARATOR, 
    new MyCustomComparator(), 
    DisplayMode.NORMAL, 
    CUSTOM_COMPARATOR_LABEL); 

So müssen Sie SortConfigAttributes.SORT_COMPARATOR und ein entsprechendes Etikett eine Comparator für das Konfigurationsattribut registrieren.

Wenn Sie jedoch keinen passenden Typkonverter haben, müssen Sie Strings vergleichen. Also IMHO müssen Sie eine DisplayConverter registrieren und Sortierung funktioniert wie vorgesehen, ohne dass ein benutzerdefinierter Komparator benötigt wird.

+0

Wo kann ich Datentyp registrieren? – jugal

+0

Sie registrieren einen IDisplayConverter über ConfigRegistry wie die meisten Konfigurationen in NatTable. Weitere Informationen finden Sie in der Dokumentation https://www.eclipse.org/nattable/documentation.php?page=editing –

Verwandte Themen