![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
RichEdit моргает!! [D5, WinXP]
VCL © (2002-04-11 15:40:00)Здравствуйте, у меня такой вопрос - я использую компонент RichEdit, изменяю формат вводимого текста по нажатии на клавишу (по WM_KEYUP) - для этого мне приходится отключать ReDraw при помощи посылки сообщения WM_SETREDRAW, потом включать. После этого приходится перерисовывать весь компонент:
InvalidateRect(RichEdit1.Handle, 0, false);
Но этот метод слишком моргает :(( то есть перерисовка происходит оччень погано. Как перерисовать часть текста (т.е. как получить ее Range) - я не знаю.
Пож-ста, посоветуйте кто-нить как избавиться от этой проблемы. Заранее благодарен.
VCL (2002-04-28 22:59:00) [1]Что под этим понимается?? Я сначала блокирую ReDraw, потом включаю (это чтобы не было видно выделения текста), а что такое lock И unlock???
KilkennyCat (2002-04-27 10:54:00) [2]По-моему, можно еще делать lock и unlock перед и после изменений.
Nikolay M. (2002-04-26 13:38:00) [3]Может я старею и чего не понимаю...
Но если нужно поменять, например, цвет только части текста, достаточно знать про свойства RichEdit-а SelStart, SelLength и SelAttributes. Если я правильно понял вопрос...
gek (2002-04-26 12:20:00) [4]А если beginUpdate endupdate
Dy-Ty (2002-04-26 12:11:00) [5]а
UpdateWindowне пробовал ?
KilkennyCat (2002-04-26 03:13:00) [6]Возьми другой компонент, например Ткаченковский TrichView
VCL (2002-04-25 21:57:00) [7]Нет, нужно что-нить помощнее...
MBo (2002-04-19 22:57:00) [8]у меня помогает.
VCL (2002-04-19 22:45:00) [9]Это никак не помогло...
MBo (2002-04-19 22:33:00) [10]для формы
doublebuffered:=true;
VCL (2002-04-19 22:26:00) [11]Что, совсем никто не знает??
VCL (2002-04-11 23:30:00) [12]Нет, я имею ввиду изменение формата части текста - шрифт, цвет. Для этого надо выделить часть текста, потом заменить у выделенной формат. Мне, по крайней мере, известен тока этот способ...
Получить Range - получить координаты того прямоугольника, текст в котором изменился, чтобы весь компонент не перерисовывать...
JibSkeart (2002-04-11 16:18:00) [13]Нет а RichEdit1.Lines[x]
некатит чтоль все что хош то и делай с текстом
или я что то не так понял ??
И что значит получить ее Range ?