| |

VB.NET - FortgeschritteneRe: DoEvents | |  | Autor: DaveS (Moderator) | Datum: 11.02.04 21:03 |
| Und jetzt mein Versuch das zu erjklären:
Um DoEvents() zu verstehen muss man zuerst eine Idee haben wie Windows GUI Anwendungen funktionieren.
Windows generiert dauernd Meldungen, Window Messages, z.B. wenn mit der Maus geklickt wird,
eine Taste gedrückt wird usw. Windows stellt fest zu welcher Anwendung die Meldung geschickt werden soll,
und speichert sie in einem Message Queue für die Anwendung. Eine GUI Annwendung sitzt meistens in eine Schleife,
die diese Messages aus dem Queue liest, zum richtigen Fenster der Anwendung schickt, und dort eine Windows Funktion
aufruft, die als Eventroutine für die Message definiert ist. Z.b. eine Button Click Routine(so in sehr ungefähr).
Wenn so eine Routine aufgerufen wird werden keine Messages mehr gelesen oder abgearbeitet
bis die Eventroutine zur Hauptschleife zurückkehrt. Das heisst, deine Anwendung reagiert nicht mehr
auf Befehle vom Benutzer, ein Zustand den wir alle Kennen wenn etwa ein Fenster leer bleibt nachdem
ein anderes Fenster weggezogen wurde, z.B.
Wenn man eine Routine hat die lange läuft, ist es dann ratsam ab und zu DoEvents() aufzurufen,
da DoEvents() wieder die anstehenden Messages liest, sie bearbeitet, und dann zurückkehrt zu der noch aktiven Eventroutine.
Dadurch bleibt die Anwendung aktiv. Man muss aber beachten, dass Eventroutinen dadurch eventuell
rekursiv aufgerufen werden können. Es ist übrigens nicht unbedingt notwendig DoEvents()aufzurufen wenn es nur darum geht ein Fenster
(etwa ProgressBar) neu zu zeichnen. Das geht einfach mit der Control.Refresh() Funktion, die das Fenster synchron neu zeichnet.
Dass andere Prozesse hängen gehört übrigens zur Win 3 Welt, aber nicht mehr unter Win32. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevZIP40 Pro DLL 
Zippen und Unzippen wie die Profis!
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Weitere InfosTipp des Monats 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
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
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.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|