The Cancel dialog box typically contains a single push button that allows the user to cancel a print job. The following template for the Cancel dialog box was taken from the sample application's resource (.RES) file.
AbortDlg DIALOG LOADONCALL MOVEABLE DISCARDABLE 33, 32, 160, 70
CAPTION "Sample Printing App"
STYLE WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_VISIBLE |
WS_POPUP | WS_SYSMENU
BEGIN
CONTROL "Now Printing: ", IDD_TEXT, "static",
SS_CENTER | WS_CHILD, 0, 10, 160, 8
CONTROL "", IDD_FILE, "static",
SS_CENTER | WS_CHILD, 0, 25, 160, 8
CONTROL "Cancel", IDD_CANCEL, "button",
BS_DEFPUSHBUTTON | WS_TABSTOP | WS_CHILD,
60, 45, 45, 15
END
The code sample that follows shows the dialog box procedure for the application.
LRESULT CALLBACK AbortPrintJob(
HWND hwndDlg, // window handle of dialog box
UINT message, // type of message
WPARAM wParam, // message-specific information
LPARAM lParam) // message-specific information
{
switch (message)
{
case WM_INITDIALOG: / message: initialize dialog box
// Initialize the static text control.
SetDlgItemText(hwndDlg, IDD_FILE, ofn.lpstrFile);
return TRUE;
case WM_COMMAND: // message: received a command
// User pressed "Cancel" button--stop print job.
MessageBox(hwndDlg, "Incoming", "WM_COMMAND", MB_OK);
bPrint = FALSE;
return TRUE;
default:
return FALSE;
}
UNREFERENCED_PARAMETER(lParam);
UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(message);
}