CPrintDialog::m_pd
更新 : 2007 年 11 月
メンバにダイアログ オブジェクトの特性を持つ構造体です。
PRINTDLG& m_pd;
解説
CPrintDialog オブジェクトを構築後、DoModal メンバ関数を呼び出す前に、ダイアログ ボックスのさまざまな設定を行うために m_pd を使います。この m_pd 構造体の詳細については、Windows SDK の「PRINTDLG」を参照してください。
m_pd データ メンバを直接変更すると、既定の動作をオーバーライドできます。
使用例
// Display the Windows Print dialog box with "Pages" radio button
// initially selected. "All" and "Pages" radio buttons are
// enabled as well.
CPrintDialog dlg(FALSE, PD_PAGENUMS | PD_USEDEVMODECOPIES);
dlg.m_pd.nMinPage = dlg.m_pd.nFromPage = 1;
dlg.m_pd.nMaxPage = dlg.m_pd.nToPage = 10;
if (dlg.DoModal() == IDOK)
{
// Determine the starting and ending page numbers for the range
// of pages to be printed.
int from_page = -1, to_page = -1;
if (dlg.PrintAll()) // print all pages in the document
{
from_page = dlg.m_pd.nMinPage;
to_page = dlg.m_pd.nMaxPage;
}
else if (dlg.PrintRange()) // print only a range of pages
{ // in the document
from_page = dlg.GetFromPage();
to_page = dlg.GetToPage();
}
else if (dlg.PrintSelection()) // print only the currently selected
// items
{
from_page = to_page = -1; // -1 to denote unknown yet
}
TRACE(_T("Print from %d to %d\n"), from_page, to_page);
}
必要条件
ヘッダー : afxdlgs.h