Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Caret pos в TMemo


d_oleg ©   (2002-03-28 18:21:00) 

Подскажите, как системной ыункцией определить положение курсора в TMemo? И как установить положение курсора.


MBo   (2002-03-29 10:03:00) [1]

нужно просто заменять SelText
memo1.seltext:=измененный;


d_oleg   (2002-03-29 09:53:00) [2]

Ну это всё хорошо, когда нету собственно выделения. А если выделение есть, то курсор устанавливается жёстко в положение SelStart + SelLength. А мне нужно установить именно при наличии выделения. Опишу ситуацию подробнее: есть такст в TMemo. При выделении пользователем нужно изменить регистр выделения. Я для этого разбиавю строку, поднимаю регистр, потом снова собираю и присваиваю обратно TMemo.Text. При этом выделение, естественно, теряется. Если пользователь выделяет слева направо, то ситуация решается установкой SelStart и SelLength. А вот если справа налево - курсор устанавливается не в начало, а в конец выделения.


MBo   (2002-03-29 09:12:00) [3]

SelStart (вычисляется с помощью EM_*)


d_oleg   (2002-03-29 09:01:00) [4]

Ну это я так понимаю, чтобы получить. А установить?


MAxiMum   (2002-03-28 18:31:00) [5]

Используй сообщения EM_LINEFROMCHARи EM_LINEINDEX.


Наверх

Титульная страница Поиск, карта сайта Написать письмо