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.494 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. |
vb@rchiv CD Vol.6 Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats April 2024 Skyfloy Chart von Microsoft und dazu noch gratis Tutorial für Microsoft Chart Controls für Microsoft .NET Framework 3.5 sevGraph (VB/VBA) Grafische Auswertungen Präsentieren Sie Ihre Daten mit wenig Aufwand in grafischer Form. sevGraph unterstützt hierbei Balken-, Linien- und Stapel-Diagramme (Stacked Bars), sowie 2D- und 3D-Tortendiagramme und arbeitet vollständig datenbankunabhängig! |
||||||||||||||||
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. |