CRichEditCtrl使用CHARFORMAT结构设置字体

编辑框为CRichEditCtrl,在CWinApp中的InitInstance中添加AfxInitRichEdit2方法,然后使用CHARFORMAT这个结构设置字体风格与颜色, 在对话框上放置CRichEditCtrl,然后为对话框类关联变量m_RichEditCtrl

int i=1; //第二行行号
int start=m_RichEditCtrl.LineIndex(i); //第二行开始的索引号
int end=m_RichEditCtrl.LineIndex(i+1); //第三行开始的索引号

m_RichEditCtrl.SetSel(start,end);//全选第二行文本
CHARFORMAT cf;  

m_RichEditCtrl.GetSelectionCharFormat(cf);  

cf.dwMask|=CFM_BOLD;  

cf.dwEffects|=CFE_BOLD;//设置粗体,取消用cf.dwEffects&=~CFE_BOLD;  

cf.dwMask|=CFM_ITALIC;  

cf.dwEffects|=CFE_ITALIC;//设置斜体,取消用cf.dwEffects&=~CFE_ITALIC;  

cf.dwMask|=CFM_UNDERLINE;  

cf.dwEffects|=CFE_UNDERLINE;//设置斜体,取消用cf.dwEffects&=~CFE_UNDERLINE;  

cf.dwMask|=CFM_COLOR;  

cf.crTextColor = RGB(255,0,0);//设置颜色  

cf.dwMask|=CFM_SIZE;  

cf.yHeight =200;//设置高度  

cf.dwMask|=CFM_FACE;  

strcpy(cf.szFaceName ,_T("隶书"));//设置字体
m_RichEditCtrl.SetSelectionCharFormat(cf);  

可以用这样来设置
CHARFORMAT cf;
ZeroMemory(&cf, sizeof(CHARFORMAT));
cf.cbSize = sizeof(CHARFORMAT);
cf.dwMask = CFM_BOLD | CFM_COLOR | CFM_FACE |
CFM_ITALIC | CFM_SIZE | CFM_UNDERLINE;
cf.dwEffects = 0;
cf.yHeight = 16*16;//文字高度

if(nhight>0)
cf.crTextColor = RGB(255,0,0); //文字颜色
//else
// cf.crBackColor = RGB(0,255,0); //文字颜色
strcpy(cf.szFaceName ,_T("Arial"));//设置字体

//m_richedit1.SetSel(1, 5); //设置处理区域
this->SetSelectionCharFormat(cf);
this->ReplaceSel(strLine);
this->ReplaceSel("\n");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值