Access: Prozessmeldungsfenster schaffen Vertrauen

Das Formular, das die Prozessmeldung anzeigt
Bild 1

Überarbeitete Version:

Im Oktober 2017 habe ich Euch das Prozessmeldungsfenster schon einmal vorgestellt. Inzwischen hat die Lösung ein paar kleine Verbesserungen erfahren. So  ist es nun möglich, nachdem der Anwender auf das Abbrechen-Symbol geklickt hat, im Meldungsfenster anzuzeigen, was als nächstes passieren wird. Im Bild 1 seht Ihr ein Beispiel für das Aussehen des Meldungsfensters, nachdem auf das Abbrechen-Symbol geklickt wurde.

 

Access: Prozessmeldungsfenster schaffen Vertrauen:

Datenverarbeitungsaktionen können manchmal länger dauern. Gut, wenn der Anwender des Programms dann Prozessmeldungen erhält, die den Fortschritt sichtbar machen. Das beruhigt, schafft Vertrauen und lässt die Zeit gefühlt schneller vergehen. Im Gegensatz zur VBA-Funktion MsgBox(), ist hier keinerlei Interaktion durch den Anwender nötig. Das Fenster meldet nur laufend den Prozessfortschritt und verschwindet von selbst, wenn der Vorgang abgeschlossen ist.  Ich verwende diese oder eine ähnliche Lösung in allen meinen Projekten, nicht nur in Access-Anwendungen sondern auch in Excel-, Word- und VB.net-Projekten.

 

Für den Fall, dass der Anwender den Vorgang vorzeitig abbrechen möchte, bietet das Meldungsfenster eine Abbrechen-Schaltfäche (Bild 2). Mit dieser Schaltfläche gibt der Anwender dem Programm zu verstehen, dass der Vorgang zum nächst möglichen Zeitpunkt abgebrochen werden soll. Wann das passiert entscheidet der Programmierer.

Meldungsfenster mit der Möglichkeit zum Abbrechen des Datenverarbeitungsvorgangs
Bild 2

Dieser Artikel stellt den Download einer Beispiellösung zur Verfügung.

Im Projekt gibt es ein Formular,  frmMsg (Siehe Bild 1), und ein Modul, modMsg. Das Modul stellt die folgenden globalen Funktionen und Prozeduren zur Verfügung:

  • Show_Msg(Message As String, _
                         Optional Attach_Text As Boolean = False, _
                         Optional Cancel_Enabled As Boolean = False,
                         Optional Cancel_Button_Caption="")

Diese Prozedur zeigt das Meldungsfenster mit dem übergebenen Text (Message) an. Ist das Meldungsfenster bereits offen, dann wird nur die Mitteilung geändert. Setzt man den Parameter Attach_Text auf True, dann wird der übergebene Text an einen bereits vorhandenen angefügt. Der Parameter Cancel_Enabled = True macht eine Schaltfläche zum Abbrechen des laufenden Prozesses sichtbar. Mit dem Parameter Cancel_Button_Caption kann die Beschriftung der Schaltfläche individuell angepasst werden.

  • Close_Msg()

Schließt das Prozessmeldungsfenster. Im Programmcode muss sicher gestellt werden, dass diese Prozedur immer aufgerufen wird, auch im Fehlerfall. Andernfalls bleibt das Meldungsfenster stehen. Die Schaltfläche Abbrechen schließt nicht das Fenster, sondern erlaubt nur dem Formular sich zu merken, dass da jemand gern den laufenden Prozess abbrechen möchte.

  • HasBeenCanceled_Msg() As Boolean

Diese Funktion gibt True zurück, wenn der Anwender des Programms auf die Schaltfläche Abbrechen geklickt hat. Entscheide selbst, wann ein sinnvolles Unterbrechen des laufenden Prozesses möglich ist.

 

Formular der Beispielanwendung
Bild 3

Die Beispiel-Anwendung, die Du von dieser Seite herunterladen kannst, startet mit einem Formular (Bild 3), das die Arbeitsweise des Prozessfensters verdeutlicht.

 

 

Download
Beispiel für die Anwendung des Prozessmeldungsfensters Version 2.0
Der Programmcode ist frei verfügbar. Eine Erwähnung der Quelle wäre nett!
Beispiel_Prozessmeldungsfenster_2.0.zip
Komprimiertes Archiv im ZIP Format 649.0 KB

Kommentar schreiben

Kommentare: 0