CPrintDialogEx 类中的 DoModal 方法用于显示打印对话框,并等待用户的响应。以下是 CPrintDialogEx 的 DoModal 方法的基本形式:
INT_PTR DoModal();

该方法返回用户在对话框上进行的操作的结果,通常是 IDOK 表示用户点击了“确定”按钮,或者 IDCANCEL 表示用户点击了“取消”按钮。

以下是一个简单的示例用法:
CPrintDialogEx printDlg(FALSE, PD_ALLPAGES | PD_NOPAGENUMS | PD_HIDEPRINTTOFILE, this);

if (printDlg.DoModal() == IDOK) {
    // 用户点击了“确定”按钮

    // 获取选定的打印机设备上下文
    CDC dcPrinter;
    dcPrinter.Attach(printDlg.GetPrinterDC());

    // 在这里执行打印操作,使用 dcPrinter 进行绘制
    // ...

    // 分离打印机设备上下文
    dcPrinter.Detach();
}

在上述示例中,DoModal 方法将显示打印对话框,然后等待用户进行交互。如果用户点击了“确定”按钮,就可以继续执行打印操作。如果用户点击了“取消”按钮或关闭了对话框,DoModal 方法会返回相应的值,通常是 IDCANCEL。


转载请注明出处:http://www.zyzy.cn/article/detail/21772/MFC/CPrintDialogEx