Sortiercode funktioniert nicht

Startseite Foren Deutsches LiveCode-Forum Sortiercode funktioniert nicht

Ansicht von 4 Antwort-Themen
  • Autor
    Beiträge
    • #34389
      Peter_M
      Teilnehmer

      Hallo Forum,
      ich wollte die Worte eines Textfelds „Produktliste“ sortieren und habe offensichtlich wieder mal einen Knoten im Gehirn!
      Beim ersten Ausführen folgenden Codes wurden die Worte zwar noch sortiert, aber nicht wie gewünscht von A-Z sondern umgekehrt.

      on mouseUp
         put the text of fld"Produktliste" into zu_sortieren
         put " " & word 1 of zu_sortieren into sortiert
         repeat with x=2 to the number of words of zu_sortieren
            put " " & word x of zu_sortieren  into zs
            put 0 into y
            repeat
               put y+1 into y
               if zs > word y of sortiert then exit repeat
            end repeat
            put zs &" " before word y of sortiert
         end repeat
         put sortiert into fld"Produktliste"
      end mouseUp
      

      Bei weiteren Ausführungsversuchen nach Modifikationen
      des Textfelds passierte scheinbar gar nichts mehr. Was mache ich falsch?

    • #34400
      Torsten
      Teilnehmer

      Hi Peter,

      was willst Du denn nach welchem Kriterium sortieren?

      Im Beitrag sagst du, dass von A-Z sortiert werden sollte, dafür ist das hier besser:

      set itemdelimiter to space
      sort items of zu_sortieren text descending
      

      Happy Coding
      Torsten

    • #34403
      Klaus Major
      Verwalter

      Und warum vergleichst Du zwei String mit >?

      ...
      ## Sowohl "zs" als auch "word y of zu_sortieren" sind Strings
      ## Wann ist ein String (KEINE Nummer) größer oder kleiner als ein anderer?
      if zs > word y of sortiert
      ...
    • #34412
      Torsten
      Teilnehmer

      Livecode macht lustige Sachen:

      „A“ < „B“ = true
      „A“ > „B“ = false

      „2A“ > „10“ = true

      ?

    • #34415
      Peter_M
      Teilnehmer

      Hi Klaus,
      ich komme halt von Visual Basic, da hat man so programmiert.

      Hi Torsten,
      dein Code war mal wieder genau das, was ich gesucht habe. Danke!
      Nichtsdestotrotz verstehe ich nicht – wenn auch jetzt unwichtig – wie LiveCode meinen Code verarbeitet hatte. Beispielsweise habe ich nach der 1. Sortierung ein Produkt in der Liste verschoben und dann wieder die Sortierung aufgerufen. Jetzt passierte rein gar nichts. Das manuell nachträglich falsch ein sortierte Produkt liebt genau an seinem Platz….
      Ja, LiveCode macht manchmal lustige Sachen!

Ansicht von 4 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.