Seite 1 von 1

Array-Datenbank ordnen

Verfasst: 19.10.2006 13:34
von DarkSoul
problem:

ich habe 5 arrays als datenbank:
Dim SongS.s(10000)
Dim SongI.s(10000)
Dim SongA.s(10000)
Dim SongF.s(10000)
Dim SongState(10000)
Wie ordne ich SongS wie mit SortArray() alphabetisch , so dass sich SongI,SongA usw. mit ordnen und die datensätze nicht durcheinanderkommen?

Dann würde ich das gerne so haben:
SongS wird in einem listicon aufgelisten (nicht alle datensätze!!!, nach SongI und SongA wird vorher verschiednermaßen gefiltert.) Welche Datensätze gerade angezeigt werden, speicehre ich in

Filter (schema!):
Dim States.w(10000)
filertA=Irgendwas
FilterB=Irgendwas
StatesCounter=0
For a = 0 to 10000
if FilerA=SongA(a) and filterI=SongI(a)
States(StatesCounter)=SongS(a)
addgadgetitem(0,StatesCounter,SongS(a))
endif
next a
StatesCounter -1


Sates(0) enthält die datensatznummer des ersten Datensatzes, states(1) die des zweiten usw.

nun will ich, dass man die angezeigten Datensätze durch ziehen mit der Maus in der reihenfolge ändern kann, so dass dies im listenfeld UND an den Arrays ändert. (und zwar immer datensatzweise, nicht nur SongS()!)
und wie gesagt - auch auf tastendruck alphabetisch ordbar sein

>PB 3.3<

Verfasst: 19.10.2006 14:30
von NicTheQuick
Dazu nimmst du am besten eine Struktur

Code: Alles auswählen

Structure Song
  s.s
  i.s
  a.s
  f.s
  state.l
EndStructure

Dim Song.Song(10000)

;Songs in Array eintrage

SortStructuredArray(Song(), 2, OffsetOf(Song\s), #PB_Sort_String)

;Songs filtern und im ListIconGadget anzeigen
Mehr über Strukturen findest du auch in der Hilfe.

Hab den Thread mal dahin verschoben, wo er hingehört.