MoveListProc

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

  • Hallo Roland,

    Wäre es möglich, die MoveListProc auch nur für eine bestimmte Move(...ToList , ...) Funktion

    zu triggern ? Vielleicht mit einem zusätzlichen Parameter bei


    Set("MoveListMode", N)


    Der Parameter könnte eine Zahl von 1 - 5 sein, der die jeweilige Funtkion der 5 ToList Funktionen

    erfasst. (1 = ArrToList, 2 = FileToList, 3 = HandleToList usw.).


    Hintergrund ist der, wenn ich zwei oder mehrere Move Funktionen mit ToList brauche. In meinem

    Falle soll FileToList getriggert werden und später HandleToList aber nicht. Wenn man dann später

    in einem großen Quellcode den MoveListMode aus dem Blick verliert, kommt es bei den anderen

    ToList Funktionen zu ungewollten Ergebnissen.


    Da fände ich es besser, wenn man den Mode am Programmanfang einmal einstellen könnte.

  • Mit Set("MoveListMode",irgendwas) steuerst Du, welcher Unterzweig in der MoveListProc aufgerufen wird.

    Die Zahl die Du dort einsetzt kann z.B. mittels DEF mit Namen versehen werden.


    DEF %NormalerLauf 0

    DEF %VollerWochentag 1

    DEF %GekuerzterWochentag 2

    DEF %NUR_strtolist_Sonderzeichen_aus_Namen_entfernen 3


    Und die Unterzweige sind doch fast endlos. Füge also einfach einen If-Zweig hinzu, der sich nur mit

    einer bestimmten move()-Funktion ausführen lässt und vergebe einen entsprechenden Namen.


    So kann man nicht mehr durcheinander kommen.

    Statt endlos langer Konstantennamen kann auch ein Kommentarblock unter den Konstanten helfen.


    >Da fände ich es besser, wenn man den Mode am Programmanfang einmal einstellen könnte.


    Du kannst Set("MoveListMode",n) vor den Move-Funktionen aufrufen, so das jede Funktion anders funktioniert - je nach Parameter.


    Das Beispiel in der Hilfe etwas umgestellt:

    Programmieren, das spannendste Detektivspiel der Welt.

    2 Mal editiert, zuletzt von Michael Wodrich () aus folgendem Grund: ergänzt

  • Das war dann ein Gedankenfehler von mir.

    Dachte, daß Set("MoveListMode", N) für alle

    5 Listen gleichermaßen gilt und der Mode

    nur die Stringbehandlung (Parameter s)

    beeinflußt und nicht die 5 Listen. Also, je

    nach Modus eine andere Behandlung

    z.B. von InStr().


    Zitat

    Set("MoveListMode"

    Diese SetFunktion triggert die Callback-Prozedur MoveListProc. Ist N gleich 0, wird die Prozedur nicht genutzt und auch nicht benötigt. Ist der Modus ungleich 0 wird für jeden mit Move("...ToList" kopierten Eintrag die Prozedur aufgerufen.

    Da habe ich wohl falsch gelesen.