Widget Palette Actions

Startseite Foren Deutsches LiveCode-Forum Widget Palette Actions

Schlagwörter: 

Ansicht von 11 Antwort-Themen
  • Autor
    Beiträge
    • #43154
      Jochen
      Teilnehmer

      Hallo zusammen,

      ich habe eine App mit Rundgängen über mehrere Stationen programmiert. Zum Auswählen der Stationen habe ich das Widget Palette Actions verwendet. In der App sieht das dann ungefähr so aus:

      Station 1 Station 2 Station 3 >>

      Soweit klappt alles sehr gut. Hat der User jetzt zum Beispiel diesen Rundgang bis Station 6 gemacht:

      << Station 5 Station 6 Station 7 >>

      geht dann auf Zurück in der App (Wechsel zu einer anderen Karte) und ruft im Anschluss wieder einen Rundgang auf, stehen die Stationen immer noch so, bis auf da, wie in diesem Beispiel, die Station 6 nicht mehr angewählt ist.

      << Station 5 Station 6 Station 7 >>

      Die angewählte Station ist die Station 1, ausgeführt über selectedNavItem, wird aber so nicht angezeigt.

      set the selectedNavItem of widget Palette to 1

      Hat von euch einer eine Idee, wie ich das Problem lösen kann?

      Vielen Dank im Voraus!

    • #43169
      Klaus Major
      Verwalter

      Hallo Jochen,

      das Widget "Palette Action" ist seit ein paar Versionen nicht mehr in der TOOLS Palette!?
      Das wird sicher seine Gründe haben und daher kann ich leider auch nichts dazu sagen.

      Aber wenn Dein Widget "Palette" heissen sollte, setze es in Anführungszeichen, da "Palette" ein reserviertes Wort ist!
      set the selectedNavItem of widget "Palette" to 1

      Vielleicht solltest Du auf ein anderes Widget wie "Navigation Bar" umstellen?

      Gruß

      Klaus

    • #43179
      Jochen
      Teilnehmer

      Hallo Klaus,

      ich hab das Widget mal umbenannt, hat aber auch nichts gebracht. Von der Funktion gefällt mir Palette Action eigentlich schon am besten, aber ich werde deine Idee mal aufgreifen und es mit "Navigation Bar" versuchen. Ist halt nur mehr Programmieraufwand, da ich mehr Stationen habe, als auf den Bildschirm passen.

      Vielen Dank für deine Antwort
      Schöne Grüße
      Jochen

    • #43186
      Klaus Major
      Verwalter

      Du kannst "Palette" gerne als Namen weiter benutzen, aber es MUSS in Anführungszeichen stehen!
      Dann ist es ja kein reserviertes Wort mehr, sondern nur ein String.

      Ich weiß auch gar nicht mehr, wie so ein Widget aussieht, hatte ich nie benutzt.
      Welche Version von LC hast Du denn?

    • #43268
      Jochen
      Teilnehmer

      Hallo Klaus,

      ich benutze LC 9.6.6
      Aber auch in neuen Version LC 10 ist das Widget noch vorhanden.

    • #43269
      Klaus Major
      Verwalter

      Wo genau in der TOOLS Palette?
      Sorry, kann ich ums Verrecken nicht finden?
      Schick mir mal einen kleinen Screenshot an: klaus AT major-k.de
      Bevor ich noch an meinem Verstand zweifel. 😀

      Und danke für Deine Spende, jetzt weiß ich auch, wer das war. 🙂

    • #43272
      Klaus Major
      Verwalter

      Hier ist meine TOOLS Palette, was übersehe ich?
      Wenn überhaupt.
      LC TOOLS

    • #43303
      Jochen
      Teilnehmer

      Hallo Klaus,

      das Widget wird im Standard nicht angezeigt. Du musst es über das + oben im Werkzeugkasten auswählen und anzeigen lassen.

      Im Werkzeugkasten steht dann Widget.

    • #43305
      Klaus Major
      Verwalter

      AHA! Danke, da kann ich ja lange suchen! 🙂

      OK, dann schaue ich mir jetzt noch einmal genau Dein Problem an...

    • #43308
      Klaus Major
      Verwalter

      Leider gibt es im Dintionary keinerleit Einträge (mehr) über dieses Widget.. :-/
      Jetzt muss ich erst einmal rausbekommen, wie das Dingen zu skripten ist.
      Hast Du einen Hinweis für mich? Was hast Du denn geskripted?

      Spontane Idee:
      Sind Deine "Stationen" jeweils auf einer Karte?
      Falls ja, könntest Du beim Verlassen der Karte (closecard) die Station merken und beim Öffnen wieder im Widget erneut setzen?

    • #43330
      Jochen
      Teilnehmer

      Du kannst Informationen über das Widget im Dintionary finden, indem du das Widget auf einer Karte einfügst und dann im Project Browser mit der rechten Maustaste auf das Widget gehst und "Show Documentation" aufrufst.

      Das hier ist der Teil des Codes für das Palette Action Widget, welches ich Auswahl genannt habe:

         repeat with n=1 to AnzStationen
            put n & comma after palNameList               #1,2,3
            put comma after palIconList                   #,,,, (Icons brauche ich nicht)
            put "Station " & n & comma after palLabelList # Station 1, Station 2, ... (Das was im Widget angezeigt wird)
         end repeat
         
         set the navNames of widget Auswahl to palNameList
         set the navIcons of widget Auswahl to palIconList
         set the navLabels of widget Auswahl to palLabelList
         set the selectedNavItem of widget Auswahl to 1  # Starten mit Station 1
    • #43347
      Klaus Major
      Verwalter

      AHA! Danke!
      Wäre ich nie drauf gekommen, hat LC wirklich gut versteckt! 😀

      Ich frage mich, warum LC das nicht mehr in die TOOLS Palette packt und im Dictionary
      so gut versteckt hat!?

      Aber was ist mit meiner letzten Frage, mal ausprobiert?
      Klingt so, als könnte das klappen, wenn Deine "Stationen" jeweils auf einer separaten Karte sind.

      Falls nicht, die letzte "Station" irgendwie merken (globale/lokale Variable oder Custom Property)
      und später wieder herstellen, das hier funktioniert auf jeden Fall:

      ...
      set the selectednavItem of widget 1 to "Station 3"
      ## Auch wenn das "selectednavItem" gerade nicht sichtbar ist!
      ...
Ansicht von 11 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.