JTabelle Zeilenhighlighter basierend auf dem Wert von TableCell

8

wie ich gelesen habe, dass es nicht möglich ist, meine Navajo Sprache zu kodieren

finging den Weg, wie nur Farbe in JTable (Beispiel @ camickr)

%Vor%

Ich habe eine JTable , die einige Markttrades enthält (besser zum Verständnis aufgrund meiner schlechten Englischkenntnisse), aber einige der Deals haben nur ein Bein, aber ein anderes (zum Beispiel Vanille Cross Currency Swap) könnte zwei Beine haben. Wie ist es möglich, TableRows auf Basis des Wertes von specificals TableColumn zu erhellen (zum Beispiel die letzte Spalte mit dem Namen DealId). Ich habe versucht, row mit row - 1 && row + 1 zu überprüfen, aber mein leerer Kopf erzeugte viele CodesRow, zu viel für die Idee, wie man komplizierte einfache einfache Dinge stoppt, wie man überprüft, ob es doppelte Werte in einer anderen Reihe gibt (immer mit strenger Reihenfolge als auf den Bildern festgehalten). Keine Idee, wie man einfache Formel für das

implementiert

Bilder demonstriert:


aus Code generiert:

%Vor%

Bearbeiten:

Wie Sie Alignment für TableCell auf prepareRenderer setzen,

    
mKorbel 20.08.2011, 14:33
quelle

2 Antworten

4
  

wie Alignment für TableCell in prepareRenderer festgelegt wird,

Dies sollte nicht im prepareRenderer-Code erfolgen. Diese Eigenschaft sollte im Renderer für die Klasse oder für die Spalte festgelegt werden, da sie nur für eine bestimmte Klasse oder einen bestimmten Renderer gilt. Verwenden Sie stattdessen:

%Vor%

Für den Hervorhebungscode habe ich Code verwendet, der annimmt, dass der dealld -Wert für eine bestimmte Menge von Transaktionen eindeutig ist:

%Vor%

Hinweis: Es wird nicht funktionieren, wenn eine Sortierung erforderlich ist.

Hier ist ein weiterer Ansatz, der auch dann funktionieren sollte, wenn das Sortieren erforderlich ist (aber ich habe es nicht mit Sortieren getestet);

%Vor%     
camickr 20.08.2011, 16:12
quelle
2

Es ist Sonntag, wenn das Wetter degeneriert ist, also konnte ich nicht widerstehen, die SwingX-Version zu zeigen. Es ist die gleiche Logik wie @camickr 2, danke: -)

Vorteile:

  • -Code kann sich auf Logik konzentrieren, da der Wert beim Abrufen behandelt, sortieren / filtern / Spalte automatisch bewegt
  • weiß über Standard-ui alternative Striping-Farben (und Updates zum Umschalten der LAF)
  • Die Textmarker-Unterstützung ist integriert, es ist nicht notwendig, die Tabelle zu unterklassifizieren oder sich um das Fehlverhalten eines Renderers zu kümmern
  • einfach zusätzliche Textmarker hinzufügen (schreien verkaufen, verkaufen, verkaufen :-)

Der Code wurde abgeschnitten:

%Vor%     
kleopatra 21.08.2011 11:39
quelle

Tags und Links