关于CRichEditCtrl改字体颜色的问题

luckboycjw 2005-03-07 05:22:55
能帮我看下下面的代码吗?!谢谢了~我实在查不出来问题,但就是颜色不变~~~~~快疯了~
//
AfxInitRichEdit();

/////////////////////////////////////////////////////////


m_RichEdit.SetWindowText("The text for test!");

m_RichEdit.LockWindowUpdate();
m_RichEdit.HideSelection(TRUE, FALSE);
CHARRANGE crOldSel;
m_RichEdit.GetSel(crOldSel);

m_RichEdit.SetSel(0,-1); //trying to make "The" red
CHARFORMAT cf;
cf.cbSize = sizeof(cf);
m_RichEdit.GetSelectionCharFormat(cf);
//****
cf.dwMask=CFM_COLOR;
//****
cf.crTextColor = RGB(255,255,0);
m_RichEdit.SetSelectionCharFormat(cf);

m_RichEdit.SetSel(crOldSel);
m_RichEdit.HideSelection(FALSE, FALSE);
m_RichEdit.UnlockWindowUpdate();
...全文
349 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
kevin8397 2005-04-12
  • 打赏
  • 举报
回复

以下代码可以:
CHARFORMAT cf;

m_ctrRE.SetWindowText("你是谁我是谁");
m_ctrRE.SetSel(0,-1);
m_ctrRE.GetSelectionCharFormat(cf);

cf.crTextColor = RGB(0,0,255);
cf.dwEffects = 0;

m_ctrRE.SetSelectionCharFormat(cf);
zjp889 2005-03-30
  • 打赏
  • 举报
回复
能帮我看下下面的代码吗?!谢谢了~我实在查不出来问题,但就是颜色不变~~~~~快疯了~
//
AfxInitRichEdit();

/////////////////////////////////////////////////////////


m_RichEdit.SetWindowText("The text for test!");

m_RichEdit.LockWindowUpdate();
m_RichEdit.HideSelection(TRUE, FALSE);
CHARRANGE crOldSel;
m_RichEdit.GetSel(crOldSel);

m_RichEdit.SetSel(0,-1); //trying to make "The" red
CHARFORMAT cf;
cf.cbSize = sizeof(cf);
m_RichEdit.GetSelectionCharFormat(cf);
////////////////////////////////////////////////////////////////
cf.dwMask=CFM_SIZE|CFM_COLOR;
cf.dwEffects=cf.dwEffects^CFE_AUTOCOLOR; 注意这一行
/////////////////////////////////////////////////////////////////
cf.crTextColor = RGB(255,255,0);
m_RichEdit.SetSelectionCharFormat(cf);

m_RichEdit.SetSel(crOldSel);
m_RichEdit.HideSelection(FALSE, FALSE);
m_RichEdit.UnlockWindowUpdate();


如上,注意加了一行代码!
hushuangyan74 2005-03-07
  • 打赏
  • 举报
回复
楼上的方法可行:
也可以用下面的(没有本质的区别);
CHARFORMAT cf;
m_RichEdit.SetSel(0,-1);
cf.dwMask=CFM_SIZE|CFM_COLOR;
cf.yHeight=400;
cf.crTextColor=RGB(255,0,0);
m_RichEdit.SetSelectionCharFormat(cf);
piaochen_2002 2005-03-07
  • 打赏
  • 举报
回复
CHARFORMAT CH2;

CH2.dwMask=CFM_SIZE|CFM_COLOR;
CH2.dwEffects=CFE_BOLD;
CH2.yHeight=300;
CH2.crTextColor=RGB(255,0,0);
m_cPin.SetWordCharFormat(CH2);
luckboycjw 2005-03-07
  • 打赏
  • 举报
回复
字体可以改变,唯有颜色改变不了~不知道怎么回事~,哪位朋友指点一下啊~

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧