Vorgehensweise: Anzeigen des Status des Druckauftrags
In diesem Thema wird beschrieben, wie sie dem Benutzer den Status des Druckauftrags anzeigen und ihm die Möglichkeit geben, einen gerade ausgeführten Druckauftrag abzubrechen.
Übersicht
Eine Druckstatusdialogprozedur führt in der Regel die folgenden Funktionen aus.
- Zeigen Sie dem Benutzer den Fortschritt des Druckauftrags an.
- Starten Sie den Druckverarbeitungsthread.
- Zeigen Sie eine Schaltfläche Abbrechen an, damit der Benutzer einen Druckauftrag beenden kann, bevor er abgeschlossen ist.
Genau genommen muss das einzige, was die Druckstatusdialogfeldprozedur tun muss, darin besteht, dem Benutzer den Status des Druckauftrags anzuzeigen. Da die beiden anderen Funktionen in der vorherigen Liste jedoch eng miteinander verknüpft sind, wurden sie ebenfalls in dieses Modul aufgenommen.
Anzeigen des Status des Druckauftrags
Ein Druckstatusdialogfeld behandelt die folgenden Fenstermeldungen.
WM_INITDIALOG
Initialisiert die Steuerelemente, die das Dialogfeld verwendet.
WM_SETCURSOR
Legt den Cursor auf einen Zeiger fest, wenn der Benutzer einen Druckauftrag abbrechen kann, und auf den Wartecursor, wenn sich der Druckauftrag an einem Punkt befindet, an dem er nicht abgebrochen werden kann.
USER_PRINT_START_PRINTING
Legt die Statusleistenparameter für den Druckauftrag fest und erstellt den Druckthread, um mit der Verarbeitung des Druckauftrags zu beginnen.
Dies ist eine anwendungsspezifische Fenstermeldung.
WM_COMMAND – IDCANCEL
Legt das Cancel-Ereignis fest, um den Druckverarbeitungsthread anweisen, den Druckauftrag abzubrechen.
USER_PRINT_STATUS_UPDATE
Updates die Statusanzeige und status Text, um den aktuellen Zustand des Druckauftrags anzuzeigen.
Dies ist eine anwendungsspezifische Fenstermeldung.
USER_PRINT_CLOSING
Legt den schließenden status Text im Dialogfeld Status fest, um anzugeben, dass der Druckauftrag geschlossen wird.
Dies ist eine anwendungsspezifische Fenstermeldung.
USER_PRINT_COMPLETE
Zeigt dem Benutzer die Meldung "Druckauftrag abgeschlossen" an und gibt Handles und Ereignisse frei, die in diesem Druckauftrag verwendet wurden.
Dies ist eine anwendungsspezifische Fenstermeldung.