DarkDragon hat Recht.
Eigentlich sollte es bestimmt so aussehen:
Code: Alles auswählen
#max_appname_length=20
;- STRUCTURES
Structure ApplicationInfo
AppName.s{#max_appname_length}
AppPath.s{1000}
EndStructure
;- LISTS
NewList Applications.ApplicationInfo()
AddElement(Applications())
Applications()\AppName="Test 2"
AddElement(Applications())
Applications()\AppName="Test 1"
SortStructuredList(Applications(), 0, OffsetOf(ApplicationInfo\AppName), #PB_Sort_String)
ForEach Applications()
Debug Applications()\AppName
Next
Allerdings macht hier SortStructuredList() einen Fehler und ich weiß nicht
warum, liegt wohl an den neuen begrenzten Strings.
Hier mal mit einem anderen Beispiel:
Code: Alles auswählen
Structure TextTest
s.s;{100} ; <- Das Kommentarzeichen am Anfang mal entfernen
l.l
EndStructure
NewList Text.TextTest()
AddElement(Text()) : Text()\s = "zebra" : Text()\l = 1
AddElement(Text()) : Text()\s = "Auerhahn" : Text()\l = 2
AddElement(Text()) : Text()\s = "amsel" : Text()\l = 3
AddElement(Text()) : Text()\s = "tierschutz" : Text()\l = 4
SortStructuredList(Text(), 2, OffsetOf(TextTest\s), #PB_Sort_String)
ForEach Text()
Debug Str(Text()\l) + ": " + Text()\s
Next
Dazu fällt mir gerade noch ein, dass man die Hilfe bei den ganzen
Sortier-Funktionen etwas umändern sollte. Und zwar der Teil mit den
"Options":
0: Sortiert das Array in aufsteigender Richtung (kleine Zahlen zuerst, Strings werden mit Berücksichtigung der Groß-/Kleinschreibung sortiert)
1: Sortiert das Array in absteigender Richtung (große Zahlen zuerst, Strings werden mit Berücksichtigung der Groß-/Kleinschreibung sortiert)
2: Sortiert ein String-Array ohne Berücksichtigung der Groß-/Kleinschreibung (a=A, b=B etc..) in aufsteigender Richtung
3: Sortiert ein String-Array ohne Berücksichtigung der Groß-/Kleinschreibung (a=A, b=B etc..) in absteigender Richtung
Ich zumindest dachte lange Zeit es gibt keine Möglichkeit Strings mit
Berücksichtigung der Groß- und Kleinschreibung zu sortieren. Irgendwann
hab ich das dann aber zufällig gemerkt.