Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > RichEdit


Автор: dead_ricky 25.5.2004, 13:39
Как мне в RichEditCtrl выделить определенную строку определенным цветом?
И еще у меня этот RichEditCtrl заполнен текстом, как мне туда вставить пару строк, в определенную позицию (между каких-нибудь строк). В данный момент знаю только:
SetWindowText(NULL); // отчищаю весь RichEditCtrl;
Загружаю вес текст с уже вставленными строчками;
Может есть другой способ?

Зараннее спасибо smile.gif.

Автор: mr.DUDA 25.5.2004, 14:00
Цитата
   CHARFORMAT cf;
   cf.cbSize = sizeof(CHARFORMAT);
   cf.dwMask = CFM_COLOR;
   cf.crTextColor = RGB(0,0,0);

   CRichEditCtrl &ctrl = .....;
   ctrl.SetSel(beginPos, endPos);
   ctrl.SetSelectionCharFormat(cf);

Автор: dead_ricky 29.5.2004, 05:03
А как строку выделить цветом?

Автор: mr.DUDA 29.5.2004, 11:04
Вычислить beginPos и endPos строки wink.gif
beginPos = ctrl.LineIndex с номером строки (если известен не номер строки, а номер символа в строке то сначала нужно вызвать LineFromChar); endPos = beginPos + ctrl.LineLength() - 1

Автор: Step 29.5.2004, 22:26
mr.DUDA, это надо в факю в виде статьи....

Автор: mr.DUDA 31.5.2004, 11:21
сделано, вот ссылка с примерами:
http://forum.vingrad.ru/index.php?act=ST&f=31&t=23725

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)