CRichEditCtrl::FormatRange
格式化文本的大小丰富的特定设备的编辑控件。
long FormatRange(
FORMATRANGE* pfr,
BOOL bDisplay = TRUE
);
参数
pfr
对包含有关输出设备的信息的 FORMATRANGE 结构的指针。NULL 指示在丰富中缓存的信息编辑控件可以被释放。bDisplay
指示该文本是否应呈现。如果 FALSE,文本测量。
返回值
有关区域以及一个最后一个字符的索引。
备注
通常,这称为通过对 DisplayBand的调用之后。
有关更多信息,请参见 EM_FORMATRANGE 消息和 FORMATRANGE 结构。Windows SDK。
示例
// First obtain a pointer to a printer DC.
CPageSetupDialog psDlg;
if (IDOK == psDlg.DoModal())
{
CDC* pMyPrinterDC = CDC::FromHandle(psDlg.CreatePrinterDC());
FORMATRANGE fr;
// Get the page width and height from the printer.
long lPageWidth = ::MulDiv(pMyPrinterDC->GetDeviceCaps(PHYSICALWIDTH),
1440, pMyPrinterDC->GetDeviceCaps(LOGPIXELSX));
long lPageHeight = ::MulDiv(pMyPrinterDC->GetDeviceCaps(PHYSICALHEIGHT),
1440, pMyPrinterDC->GetDeviceCaps(LOGPIXELSY));
CRect rcPage(0, 0, lPageWidth, lPageHeight);
// Format the text and render it to the printer.
fr.hdc = pMyPrinterDC->m_hDC;
fr.hdcTarget = pMyPrinterDC->m_hDC;
fr.rc = rcPage;
fr.rcPage = rcPage;
fr.chrg.cpMin = 0;
fr.chrg.cpMax = -1;
m_myRichEditCtrl.FormatRange(&fr, TRUE);
// Update the display with the new formatting.
RECT rcClient;
m_myRichEditCtrl.GetClientRect(&rcClient);
m_myRichEditCtrl.DisplayBand(&rcClient);
pMyPrinterDC->DeleteDC();
}
要求
Header: afxcmn.h