字体对话框 CFontDialog

 

  

                                                                                                      设置RichEdit控件中的字体

 

 

 

第1步: 定义CHARFORMAT 变量

 

CHARFORMAT charFormat;    

 

第2步:获取CRichEditCtrl控件中的默认字体格式

 

	CHARFORMAT charFormat;
	m_richEdit.GetDefaultCharFormat(charFormat);


 

第3步: 用控件默认字体初始化字体对话框

 

  CFontDialog fontDlg(charFormat);

 

 

第4步: 使用字体对话框设置控件中的字体

 

 

	if (fontDlg.DoModal()==IDOK)
	{

		fontDlg.GetCharFormat(charFormat);

		m_richEdit.SetSelectionCharFormat(charFormat);

	//	m_richEdit.SetDefaultCharFormat(charFormat);
	}


 

 

全部代码如下:

 

	CHARFORMAT charFormat;
	m_richEdit.GetDefaultCharFormat(charFormat);

	CFontDialog fontDlg(charFormat);

	if (fontDlg.DoModal()==IDOK)
	{

		fontDlg.GetCharFormat(charFormat);

		m_richEdit.SetSelectionCharFormat(charFormat);

	//	m_richEdit.SetDefaultCharFormat(charFormat);
	}


 

 

 

    

   注:

 

    不要定义为CFONT  类型

 

    因为  m_RichEdit.GetFont()  得不到控件中字体的信息,   可能是因为GetFont() 是继承父类

  

    而     m_RichEdit.GetCharFormat() 可以得到控件中字体信息,因为GetCharFormat()函数为RichEdit控件类本身定义的函数,不是继承父类方法

 

 

参考资料:

 

http://rhythmonly.spaces.live.com/blog/cns!C314EB56A9FDCF1E!120.entry

http://blog.tianya.cn/blogger/post_show.asp?BlogID=2049912&PostID=24350978

你可能感兴趣的:(c)