Zum Inhalt springen

VB: ListView sortieren


-roTekuGeL-

Empfohlene Beiträge

Hi

hab da mal ein kleines Problem: Ich will in meinem ListView (6.0) zahlen sortieren, also ich hab in einem subitem die zahlen von 1-5000 wenn ich jetzt diese zahlen sortieren will macht er das anders als ich will: also nicht 1 2 3 4 5 6 7 8 9 sondern

1 10 100 1000 1001 1002... das selbe wenn ichs absteigend sortieren will...

weiß jemand wie ich das Problem lösen / umgehen kann?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Änder die Zahlen mit der Formatfunktion um.

format(meinezahl, "0000")

und fürge sie direkt Deinem ListView-Subitem. Die Anzahl der Nullen steht für die maximale Anzahl der Stellen in Deinen Zahlen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi,

ich hatte das problem auch einmal.

afair geht die listview davon aus, dass alle eintraege strings sind. diese ergeben in der sortierung nun einmal diese reihenfolge.

ich habe damals nichts gefunden, womit ich eine spalte der listview numerisch definieren konnte (evtl lohnt aber ein nochmaliges suchen, ist schon eine weile her...), und bin deshalb auf ein anderes steuerelement ausgewichen (far-point-spread, hat dafuer aber andere macken)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Originally posted by |roTekuGeL|

Hi

hab da mal ein kleines Problem: Ich will in meinem ListView (6.0) zahlen sortieren, also ich hab in einem subitem die zahlen von 1-5000 wenn ich jetzt diese zahlen sortieren will macht er das anders als ich will: also nicht 1 2 3 4 5 6 7 8 9 sondern

1 10 100 1000 1001 1002... das selbe wenn ichs absteigend sortieren will...

weiß jemand wie ich das Problem lösen / umgehen kann?

vielleicht hilft das?

http://groups.google.de/groups?q=listview+sortieren+zahlen&ie=UTF-8&oe=UTF-8&hl=de

Link zu diesem Kommentar
Auf anderen Seiten teilen

Originally posted by LoneGunman

ListView, Far-Point-Spread, was für Exoten benutzt Ihr eigentlich? Einfache ListBox hätte es auch getan? IMHO

Listbox?!? neee Also ich brauch halt ein steuerelement das mehrere felder (Columns) hat und das hat eine Listbox nicht (CMIIW)

und ich glaub ich hab jetzt ne antwort gefunden... ich versuch morgen den vorschlag von Lonegunman mit Space's statt nullen das sieht besser aus und müsste die selbe funktionalität haben

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich weiss nicht, ob deine Lösung funktioniert hat, aber der Windows Explorer nutzt nichts anderes als ein ListView um den Inhalt eines Verzeichnisses anzuzeigen, meine Erfahrungen dort sagen mir 10 kommt immer vor 9, da die 1 vor Leer kommt, mit 09 passt es aber.

Die Sortierung wird eben von einem Computer gemacht, und da geht es nunmal zeichenweise von links nach rechts, die Spalte kann ja alphanumerischen Inhalt haben.

Mich würde dennoch interessieren welcher deiner Versuche funktioniert hat.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also als bsp.:


Private Sub Form_Load()

For i = 1 To 5000

LV.ListItems.Add , , Space(5 - Len(i)) & i

Next i

End Sub



Private Sub LV_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)

If LV.SortOrder = lvwAscending Then

  LV.SortOrder = lvwDescending

Else

  LV.SortOrder = lvwAscending

End If

LV.Sorted = True

End Sub

...also wie gesagt statt mit nullen mit spaces

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Jahr später...

Hallo,

ich schreibe jetzt einfach mal auch in diesen Thread rein, auch wenn er schon uralt ist :-)

Also ich habe eine Listview und diese wird sortiert beim Klicken auf Spaltenüberschrift.

Allerdings soll als letzte Zeile immer eine Summenzeile angezeigt werden.

In der Summenzeile kann auch mal ein Durchschnittswert stehen. und wenn der dann kleiner als eine einzelne Ziffer in der Spalte ist, so steht dann diese summenleiste nicht mehr an letzter Stelle sonder an erster oder mittlerer...

Hat jemand eine Idee, wie man dieses Problem lösen kann.

Ich dachte mir, dass man nach dem Sortieren diese Summenzeile immer wieder an letzte Stelle verschiebt, aber ich weiß nicht so recht wie :-(

Vielen Dank,

Skorpion81

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...