![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как получить позицию начала выделения в пикселах?
TStas © (2005-06-28 19:07:00)как получить позицию начала выделения в RichEditе (мигающего текстового курсора) в пикселах по канве RichEditа? Имеется в виду, что в него згружен достаточно большой текст. Что-то мне самому ничего в голову по этому поводу не приходит.
Ученик (2005-06-28 23:03:00) [1]>TStas © (28.06.05 19:07)
GetCaretPos ?
TUser (2005-06-28 22:03:00) [2]Надо создать канву, присвоить ей DC, который сответсвует ричэдиту. Потом идти до начала текущей строки (от SelStart до символа #10 или начала текста), порверять SelAttributes символа. Устанавливать канве соотв. шрифт. Получать TextWidth от нее и эти значения суммировать. Восстановить положение курсора. Уничтожить канву. Вернуть DC.
Не забудь про BeginUpdate/EndUpdate, а то мигать будет.