Denkknoten im Umgang mit Timerinit/Timerdiff

  • Hallo zusammen,

    ich habe folgendes vor:


    Es soll z.B. alle 60 Sekunden für 5 Sekunden eine Meldung angezeigt werden (oder ein Label auf der GUI mit Text gefüllt werden)

    Ich möchte nicht Sleep verwenden, da sonst die GUI während dieser Zeit nicht reagiert.


    Hier mal mein Versuch: (Codeausschnitt)


    Ob ich später AdlibRegister brauche, weiß ich noch nicht. Könnte dann auch direkt in der While Schleife von der GUI aufgerufen werden.


    Irgendwie hat mein Kopf einen Knoten, wann welcher Timer zurückgesetzt werden muss.

    Oder gibt es sogar einen ganz anderen Ansatz dafür?


    Danke!

  • Wenn du Sleep kpl. raushaben möchtest, würde ich nur mit AdlibRegister arbeiten (hier mal so gestaltet, dass es mit der konsole funktioniert):

  • Man kommt auch ganz ohne Adlib und mit nur einem Timer aus:

  • ich werf mal noch meine Idee dazu in den Ring:

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Für eine asynchrone Anzeige (Hinweis, Zähler,...) habe ich die Funktion mit Adlib sehr zu schätzen gelernt. Vorallem kann das echt Speed in deinen Projekten bringen...

    Beipspiel: Du hast eine Schleife mit 100000 Durchläufe, dazwischen Berechnungen und vielleicht ein paar Strings die du noch parsen musst. Wenn Du bei jedem Durchgang die Anzeige refresht kostet das wertvolle Rechenzeit. Nichts Anzeigen frustiert, aber wenn sich die Anzeige nur alle 5 Sekunden ändert sieht man den Fortschritt und das Script läuft richtig flott.

    Ist nur ein Gedanke bzw. meine Erfahrungen...

    lg

    Racer