Проблемы при изменении цвета выделения CRichEditCtrl - PullRequest
2 голосов
/ 14 июня 2010

Я написал следующий код после создания CRichEditCtrl

// 06112010: следующий код был добавлен для выделения выделения текста черным цветом вместо синего цвета CRichEditCtrl по умолчанию.- 1311

{

m_EditControl.SetSel(0,100);
CHARFORMAT2 cf1;
cf1.cbSize = sizeof(CHARFORMAT2);
m_EditControl.GetSelectionCharFormat(cf1);
cf1.dwMask = CFM_BACKCOLOR ;
cf1.dwEffects &= ~CFE_AUTOBACKCOLOR;
cf1.crBackColor = RGB(0,0,0);
m_EditControl.SetSelectionCharFormat(cf1);
m_EditControl.Invalidate();

}

После этого я добавляю текст, но выделение по-прежнему отображается синим цветом вместо черного.Может кто-нибудь сказать, пожалуйста, что я делаю не так?Спасибо, Дев

1 Ответ

0 голосов
/ 03 июня 2011

Вы не можете сделать это, используя SetSelectionCharFormat, который будет только переформатировать выделенный текст. То, о чем вы просите, - это владелец управления расширенным редактированием рисования, который будет более трудоемким, чем просто вывод собственного пользовательского окна из CWnd и реализация собственного обработчика WM_PAINT.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...