MFC中RichEdit2控件的应用

MFC中RichEdit2控件的应用_第1张图片

设如下界面,把RichEdit设置为控件变量m_richedit

// Cmfc01App 初始化

BOOL Cmfc01App::InitInstance()
{
// 如果一个运行在Windows XP 上的应用程序清单指定要
// 使用ComCtl32.dll 版本6 或更高版本来启用可视化方式,
//则需要InitCommonControlsEx()。否则,将无法创建窗口。

AfxInitRichEdit2();  //===================>在此初始化

INITCOMMONCONTROLSEX InitCtrls;
InitCtrls.dwSize = sizeof(InitCtrls);
// 将它设置为包括所有要在应用程序中使用的

按钮事件设置RichEdit的格式


```cpp
void Cmfc01Dlg::OnBnClickedOk()
{
	// TODO: 设置RichEdit的格式
	CHARFORMAT2   cf;
    ZeroMemory(&cf,   sizeof(CHARFORMAT2));
	m_richedit.GetSelectionCharFormat(cf);
    cf.cbSize = sizeof(CHARFORMAT2);
    cf.dwMask = CFM_BOLD|CFM_COLOR|CFM_FACE|CFM_ITALIC|CFM_SIZE|CFM_UNDERLINE;
	cf.yHeight   =   18*18;              //文字高度
	wcscpy_s(cf.szFaceName,L"黑体");         //设置字体
	cf.crTextColor   =   RGB(255, 0, 0);   //文字颜色

	cf.dwEffects   =   0;     
	::SendMessage(m_richedit.GetSafeHwnd(), EM_SETCHARFORMAT, SCF_ALL, (LPARAM)&cf );
	::SendMessage(m_richedit.GetSafeHwnd(),EM_SETBKGNDCOLOR,0,0x00FF00); //背景色

	//行间距
	PARAFORMAT2 pf2;
	pf2.cbSize=sizeof(PARAFORMAT2);
	pf2.dwMask=PFM_LINESPACING|PFM_SPACEAFTER;
	pf2.dyLineSpacing=800; //行间距
	pf2.bLineSpacingRule=4;
	m_richedit.SetParaFormat(pf2);



	SetDlgItemText(IDC_RICHEDIT21,L"中国人民万岁中国人民万岁中国" \
								   L"人民万岁中国人民万岁中国人民万" \
								   L"岁中国人民万岁中国人民万岁中国人民万岁中国人民万岁" \
								   L"中国人民万岁中国人民万岁中国人民万岁");
}


你可能感兴趣的:(MFC中RichEdit2控件的应用)