Ich habe mal versucht, mein Programm, wenn es sozusagen auf dem Desktop dahin dämmert und nichts zu tun hat, einfach abzuschalten. Dazu habe ich im Programm zwei Timer definiert: Dim WithEvents halfTime As Timer ' die halbe Wartezeit Dim WithEvents idleTimer As Timer ' die Wartezeit Im Load-Ereignis der Startform initialisiere ich diese Timer: idleTimer = New Timer() With {.Interval = 180000, .Enabled = True} ' 3 min AddHandler Application.Idle, AddressOf Application_Idle halfTime = New Timer() With {.Interval = idleTimer.Interval / 3, .Enabled = False} Das bedeutet: Hier jetzt das Ereignis für die halbe Wartezeit: Private Sub halfTime_Tick(sender As Object, e As EventArgs) _ Handles halfTime.Tick If WindowState <> FormWindowState.Minimized Then WindowState = FormWindowState.Minimized End If halfTime.Enabled = False End Sub Wenn die halbe Idle-Time (Wartezeit) vergangen ist, wird erst mal das Fenster der Startform minimiert. Ist die gesamte Idle-Time vergangen, also wurde mit dem Programm keine Bedien-Aktion mehr vorgenommen, wird die Funktion 'Application_Idle' ausgeführt: Private Sub Application_Idle(ByVal sender As Object, ByVal e As EventArgs) With idleTimer .Stop() .Start() If WindowState <> FormWindowState.Minimized Then halfTime.Enabled = True End If End With End Sub Der Code für den Timer idleTimer führt dann die endgültige Aktion aus: ' der Timer für das Idle-Verhalten Private Sub idleTimer_Tick(sender As Object, e As EventArgs) _ Handles idleTimer.Tick With idleTimer .Stop() .Dispose() End With RemoveHandler Application.Idle, AddressOf Application_Idle Close() Application.Exit() End Sub D.h.: Wenn die gesamte Idle-Time vergangen ist, wird die Application beendet. Dieser Tipp wurde bereits 5.434 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevWizard für VB5/6 Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) Tipp des Monats März 2024 Dieter Otter UTF-8 Konvertierung von Dateien und Strings VB6 selbst verfügt über keine Funktionen zur UTF-8 Konvertierung von Daten. Mit Hilfe des ADODB.Stream-Objekts lassen sich diese fehlenden Funktionen aber schnell nachrüsten. Access-Tools Vol.1 Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |