Swing Test ob Tabellenspalte sortiert ist

S

SlaterB

Gast
definiere den Zustand 'sortiert', geht es um irgendeine Auswahl vorhanderer Sorter oder allgemein um die Reihenfolge der Elemente?
kannst du letzteres nicht durch einen Durchlauf aller Zeilen prüfen, also mit einer Schleife?
 

Ariol

Top Contributor
Wenn es dir darum geht zu entscheiden ob du Sortieren sollst oder nicht: Lass es.

Ein guter Sortieralgorithmus wird für das Sortieren einer bereits sortiereten Tabelle/Spalte genauso lange brauchen, wie man zum Überprüfen benötigen würde.
 

Pepe Rohny

Aktives Mitglied
definiere den Zustand 'sortiert', geht es um irgendeine Auswahl vorhanderer Sorter oder allgemein um die Reihenfolge der Elemente?
kannst du letzteres nicht durch einen Durchlauf aller Zeilen prüfen, also mit einer Schleife?

Im Nachhinein sehe ich jetzt auch, dass meine Frage etwas zu kurz gefasst ist.

Also: ich habe eine JTable mit einem eigens entwickelten TableModel und einem TableSorter. Ausserdem habe ich einen MouseListener auf den TableHeader angesetzt, so dass ich per Kontextmenü die Sortierung aufheben kann. Soweit funktioniert alles bestens. Nur: wie kann ich programmatisch feststellen, ob überhaupt eine Spalte sortiert ist?

Natürlich kann ich alle Spalten "von Hand" überprüfen, ob eine sortiert ist. Aber ich denke, dass es eine Möglichkeit gibt, z.B. den TableSorter zu fragen, ob und wenn ja welche Spalte er sortiert hat. Aber vielleicht ist das auch nur ein Traum meiner eingeschlafenen Füsse? Andererseits kann man manche Dinge auch über Umwege erreichen. Das ist der eigentliche Grund meiner Frage.

Pepe
 

Ariol

Top Contributor
Der TableSorter?
http://download.oracle.com/javase/t...erDemoProject/src/components/TableSorter.java

Da gibt es eine Methode
Code:
getDirective(int)
über die du an die Sortierung kommen kannst. Ist zwar aktuell private, aber das lässt sich ja ändern oder durch eine weitere Methode ergänzen.

Java:
public int getSorting(int column)
{
      return getDirective(column).getDirection();
}

/*....*/
public int getDirection()
{
     return this.direction;
}
 

Pepe Rohny

Aktives Mitglied
P.S.

ich habe eine Lösung für das Problem gefunden. Man kann den
Code:
TableRowSorter
fragen, ob es einen
Code:
SortKey
gibt:
Code:
tableRowSorter.getSortKeys().size()

Pepe
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G JavaFX Steuerung bzw. Test von externer JavaFX Anwendung (liegt nur als jar vor) AWT, Swing, JavaFX & SWT 9
N Swing Mocken von JOptionPane im JUnit-Test AWT, Swing, JavaFX & SWT 3
W JavaFX GUI Test Framework AWT, Swing, JavaFX & SWT 4
T SWT SWTBot Test: Dialog soll sich öffnen,wenn button gedrückt AWT, Swing, JavaFX & SWT 3
7 AWT problem: KeyListener/ test im Label umändern AWT, Swing, JavaFX & SWT 4
S Multiple Choice Test AWT, Swing, JavaFX & SWT 2
T [LWJGL] Depth-Test? AWT, Swing, JavaFX & SWT 2
D JTables, Test highlighten innerhalb einer Zelle AWT, Swing, JavaFX & SWT 5
S Binär Test AWT, Swing, JavaFX & SWT 3
G Test, ob Fenster sichtbar? AWT, Swing, JavaFX & SWT 2
A Automatisierter Test von Swing GUIs AWT, Swing, JavaFX & SWT 3
C JavaFX Tief setzen in der Überschrift einer Tabellenspalte AWT, Swing, JavaFX & SWT 3
H Farbe einer Tabellenspalte ändern AWT, Swing, JavaFX & SWT 3
F Swing TableRowSorter sortiert komisch!? AWT, Swing, JavaFX & SWT 4
vandread Swing JTable / DefaultTableModelwird nicht mit sortiert AWT, Swing, JavaFX & SWT 2
M JList von Beginn an sortiert nach Spalte ohne Klick? AWT, Swing, JavaFX & SWT 2
T JTable mit Renderer sortiert die gerenderte Spalte nicht richtig AWT, Swing, JavaFX & SWT 2
P JTable sortiert ProgressBar nicht AWT, Swing, JavaFX & SWT 8
R JTable sortiert nicht richtig AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen


Oben