MsgBox hooken und Countdown hinzufügen

  • Ich möchte gerne einen Countdown in das Ok Button hinzufügen, das die vorgebene Zeit herunter zählt. Man könnte dies natürlich mit einer eigen gebastelten GUI realisieren, aber will ich nicht. ;)

    Das habe ich soweit zusammen gebastelt, funktioniert leider nicht und meine Augen fallen gerade zu:

    Könnt ihr den Fehler sehen?

    :sleeping:

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

  • Ich möchte gerne einen Countdown in das Ok Button hinzufügen, das die vorgebene Zeit herunter zählt.

    Es gäbe da auch noch die Möglichkeit mittels der Timer-UDF:

  • Oscar danke für deine Alternative!

    Das hier funktioniert jetzt:


    Kürzere Version angelehnt an funkey's Methode:

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

    4 Mal editiert, zuletzt von UEZ (29. April 2023 um 01:09)

  • Hallo,

    hab das mal in meine HookDlgBox-UDF eingebaut.

    HookDlgBox.au3
    HookDlgBox Timeout Beispiel
  • UEZ ,

    AutoIt
                    _Timer_KillTimer($g_idTImer, $g_HWND) ; <<<<< umgekehrte Parameterreihenfolge

    Das hat immerhin den drolligen Effekt, dass sich das Skript bei Ablauf der Zeit beendet. Ich habe ein Weilchen gerätselt, warum das passiert.

  • Hallo,

    hab das mal in meine HookDlgBox-UDF eingebaut.

    HookDlgBox.au3
    HookDlgBox Timeout Beispiel

    Dieses Beispiel funktioniert nicht:

    AutoIt
    #include <MsgBoxConstants.au3>
    #include "HookDlgBox.au3"
    
    Global $Timeout = 5
    
    _DlgBox_SetTimeOut($Timeout, 1)
    _DlgBox_SetButtonNames("Exit")
    MsgBox(BitOR($MB_TOPMOST, $MB_ICONINFORMATION), "Information", "View has been refreshed!", $Timeout)

    Anscheinend geht es nur mit $MB_YESNOCANCEL.

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯