VB 5/6-Tipp 0060: Bildschirm einfrieren und auftauen
von ActiveVB
Beschreibung
Für bestimmte Aktionen ist es notwendig, sämtliche Aktualisierungen des Bildschirms auszuschalten und danach wieder einzuschalten. Die Windowsoberfläche wird hiermit einfach eingefroren und erst bei Bedarf wieder aktualisiert.
Schwierigkeitsgrad: | Verwendete API-Aufrufe: | Download: |
'Dieser Quellcode stammt von http://www.activevb.de 'und kann frei verwendet werden. Für eventuelle Schäden 'wird nicht gehaftet. 'Um Fehler oder Fragen zu klären, nutzen Sie bitte unser Forum. 'Ansonsten viel Spaß und Erfolg mit diesem Source! '------------- Anfang Projektdatei Project1.vbp ------------- '--------- Anfang Formular "Form1" alias Form1.frm --------- ' Steuerelement: Timersteuerelement "Timer1" ' Steuerelement: Schaltfläche "Command1" Option Explicit Private Declare Function LockWindowUpdate Lib "user32" _ (ByVal hwndLock As Long) As Long Private Declare Function GetDesktopWindow Lib "user32" _ () As Long Private Sub Command1_Click() MsgBox ("Der Bildschirm wird jetzt für 10 Sekunden eingefroren !") Form1.Enabled = False Call Freeze Timer1.Interval = 10000 Timer1.Enabled = True End Sub Private Sub Form_Load() Timer1.Enabled = False End Sub Private Sub Timer1_Timer() Timer1.Enabled = False Call Defrost MsgBox ("Alles wieder beim alten") Form1.Enabled = True End Sub Private Sub Freeze() LockWindowUpdate (GetDesktopWindow) End Sub Private Sub Defrost() LockWindowUpdate (0&) End Sub '---------- Ende Formular "Form1" alias Form1.frm ---------- '-------------- Ende Projektdatei Project1.vbp --------------
Tipp-Kompatibilität:
Windows/VB-Version | Win32s | Win95 | Win98 | WinME | WinNT4 | Win2000 | WinXP |
VB4 | |||||||
VB5 | |||||||
VB6 |
Ihre Meinung
Falls Sie Fragen zu diesem Artikel haben oder Ihre Erfahrung mit anderen Nutzern austauschen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.
Archivierte Nutzerkommentare
Klicken Sie diesen Text an, wenn Sie die 6 archivierten Kommentare ansehen möchten.
Diese stammen noch von der Zeit, als es noch keine direkte Forenunterstützung für Fragen und Kommentare zu einzelnen Artikeln gab.
Aus Gründen der Vollständigkeit können Sie sich die ausgeblendeten Kommentare zu diesem Artikel aber gerne weiterhin ansehen.
Kommentar von Tobias Soltermann am 06.09.2006 um 19:42
Hi z'ammen
Die Aktualisierungen des Bildschirms was das Tipp-Programm betrifft werden eingefroren.
Aber die Taskleiste und alles drum und dran läuft weiter wie sonst.
Sorry, funktioniert nicht wirklich.
Gruess, Tobias
Kommentar von David T. am 05.09.2006 um 16:38
Hat jemand ein fertiges Programm, das unter XP läuft, mit dem ich den Bildschirm einfrieren und wieder auftauen kann? Am besten wäre, wenn der Bildschirm beim starten des Programmes direkt eingefrohren wird und beim Starten eines anderen wieder aufgetaut wird.
mfg
Kommentar von THomas am 25.04.2004 um 19:28
Klappt super!!
Kommentar von doggi am 15.12.2003 um 23:23
also so wie dieses Programm arbeiet langt ein einziger Eintrag
und zwar
Form1.enabled = false
denn klickt man neben irgendwo hin dann ist der bildschirm nicht wirklich "eingefroren"
Kommentar von Marcus Schmitz am 09.09.2001 um 11:09
Dieser Tip funktioniert leider nicht, wenn zwischen "Einfrieren" und "Auftauen" mit der Funktion MoveWindow die Funsterposition verändert wird. Evtl. hat ja jemand ein Lösung für dieses Problem.
Kommentar von Stephan Fischer am 26.11.2000 um 11:25
Ich arbeite mit 2 bzw. 3 Grafikkarten. Ist es irgendwie möglich, Windows beizubringen, es soll nur einen der Bildschirme einfrieren?
Wissen Sie vielleicht, wie ich die einzelnen Auflösungs- und Positionsdaten der einzelnen Bildschirme abfragen kann?
MfG
Stephan