Hallo zusammen,
ich möchte hier eine grundsätzliche Diskussion zu dem Thema Application.DoEvents anregen, um ggf. neue Strategien im Programmablauf zu erfahren und zu verstehen.
... es ist für mich befremdlich, wenn Fragesteller als "dumm oder faul" bezeichnet werden, nur wenn dieser Befehl verwendet wird.
M.E. hilft dieser Befehl, um Ereignis-Handler kontrolliert abarbeiten zu lassen.
Meine Strategie (bisher) lautet wie folgt (ich nehme Anregungen aber gern entgegen):
Meine Frage: Warum ist die Verwendung von Application.DoEvents in diesem Beispiel nicht nötig ? ... ich verstehe es noch nicht, möchte es aber gern.
... gibt es hier eine andere Strategie / Herangehensweise ?
Bsp. 2: Ich möchte unterbinden, dass das Form.Activated-Ereignis nach einer MsgBox behandelt wird (zumindest in der alten Welt vor .NET war dieses der Fall)
... auch hier hilft mir m.E. die Behandlung via Application.DoEvents (nicht_verarbeiten = True), damit eventuelle Abfragen in Activated unterbunden werden.
Ich bin sehr offen für Anregungen.
.. auch um zu verstehen, wann Application.DoEvents nicht greift.
ich möchte hier eine grundsätzliche Diskussion zu dem Thema Application.DoEvents anregen, um ggf. neue Strategien im Programmablauf zu erfahren und zu verstehen.
... es ist für mich befremdlich, wenn Fragesteller als "dumm oder faul" bezeichnet werden, nur wenn dieser Befehl verwendet wird.
M.E. hilft dieser Befehl, um Ereignis-Handler kontrolliert abarbeiten zu lassen.
Meine Strategie (bisher) lautet wie folgt (ich nehme Anregungen aber gern entgegen):
VB.NET-Quellcode
- Private nicht_verarbeiten as Boolean
- Sub Form_Load() Handles Meine_Form.Load
- nicht_verarbeiten = True
- 'Anzeige von Daten in Textfelder
- '...
- Application.DoEvents() 'alle TextChanged-Ereignisse verarbeiten ... werden abgewiesen wg. nicht_verarbeiten = True ?
- nicht_verarbeiten = False
- End Sub
- Sub Textfeld_TextChanged(sender As Object, e As EventArgs) Handles Textfeld.TextChanged
- If nicht_verarbeiten =True then Exit Sub
- nicht_verarbeiten = True
- 'Daten speichern
- '...
- nicht_verarbeiten = False
- End Sub
Meine Frage: Warum ist die Verwendung von Application.DoEvents in diesem Beispiel nicht nötig ? ... ich verstehe es noch nicht, möchte es aber gern.
... gibt es hier eine andere Strategie / Herangehensweise ?
Bsp. 2: Ich möchte unterbinden, dass das Form.Activated-Ereignis nach einer MsgBox behandelt wird (zumindest in der alten Welt vor .NET war dieses der Fall)
... auch hier hilft mir m.E. die Behandlung via Application.DoEvents (nicht_verarbeiten = True), damit eventuelle Abfragen in Activated unterbunden werden.
Ich bin sehr offen für Anregungen.
.. auch um zu verstehen, wann Application.DoEvents nicht greift.