richedit 设置某一行颜色
原创
©著作权归作者所有:来自51CTO博客作者wx5fc8832a61484的原创作品,请联系作者获取转载授权,否则将追究法律责任
CHARFORMAT cf;
ZeroMemory(&cf, sizeof(CHARFORMAT));
cf.cbSize = sizeof(CHARFORMAT);
cf.dwMask = CFM_BOLD | CFM_COLOR | CFM_FACE | CFM_SIZE;
cf.dwEffects = 0;//CFE_BOLD
cf.yHeight = 300;//文字高度
cf.crTextColor = RGB(128, 128, 128); //文字颜色
int lineStart = m_rich_edit.LineIndex(0);//取第一行的第一个字符的索引
int lineEnd = m_rich_edit.LineIndex(1) - 1;//取第一行的最后一个字符的索引——用第二行的第一个索引减1来实现
m_rich_edit.SetSel(lineStart, lineEnd);//选取第一行字符
m_rich_edit.SetSelectionCharFormat(cf);//设置颜色
同理第二行就是:
int lineStart = m_rich_edit.LineIndex(1);
int lineEnd = m_rich_edit.LineIndex(2) - 1;