Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 Поиск текста и скролл к верхней границе в TMemo  [new]
_Промешан_
Member

Откуда:
Сообщений: 880
Привет!

Все это ужасно старо и занудно... И наверное так уже никто не делает...

Но все же... Нужно найти текст где-то в просторах TMemo и проскроллить каретку так, чтобы это текст оказался у верхней границы.

Как найти текст - понятно. Допустим Pos.
Как найти строку - вроде как через EM_LINEINDEX

Но как осуществить скролл, чтобы в видимой области текст отобразился сверху - пока не понятно. Легкий поиск в гугле пока не дал искомого результата. Но если кто сталкивался, подсобите, други.
4 дек 17, 00:26    [21002906]     Ответить | Цитировать Сообщить модератору
 Re: Поиск текста и скролл к верхней границе в TMemo  [new]
Гаджимурадов Рустам
Member

Откуда:
Сообщений: 57686
_Промешан_> Но как осуществить скролл, чтобы в видимой
_Промешан_> области текст отобразился сверху - пока не понятно.

(... EM_LINESCROLL, SB_LINEDOWN, N);

N, надеюсь, сам сможешь рассчитать.

Posted via ActualForum NNTP Server 1.5

4 дек 17, 01:08    [21002925]     Ответить | Цитировать Сообщить модератору
 Re: Поиск текста и скролл к верхней границе в TMemo  [new]
_Промешан_
Member

Откуда:
Сообщений: 880
Гаджимурадов Рустам,

Наткнулся на это
http://www.delphisources.ru/pages/faq/base/re_f_l_vis_line.html

Понимаю что рассчитать можно... Только долго ))))) Но вдруг кто то уже этот код писал...
4 дек 17, 01:27    [21002934]     Ответить | Цитировать Сообщить модератору
 Re: Поиск текста и скролл к верхней границе в TMemo  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 2468
А разве нельзя простой SetSel сделать на нужный номер символа? Разве он видимым не станет?
4 дек 17, 01:33    [21002937]     Ответить | Цитировать Сообщить модератору
 Re: Поиск текста и скролл к верхней границе в TMemo  [new]
_Промешан_
Member

Откуда:
Сообщений: 880
YuRock
А разве нельзя простой SetSel сделать на нужный номер символа? Разве он видимым не станет?

Это еще setFocus надо делать. Не очень красивый вариант.
4 дек 17, 01:46    [21002942]     Ответить | Цитировать Сообщить модератору
 Re: Поиск текста и скролл к верхней границе в TMemo  [new]
Гаджимурадов Рустам
Member

Откуда:
Сообщений: 57686
_Промешан_> Понимаю что рассчитать можно... Только долго )))))
_Промешан_> Но вдруг кто то уже этот код писал...

Я не понял, что конкретно не получается ?

Posted via ActualForum NNTP Server 1.5

4 дек 17, 01:56    [21002944]     Ответить | Цитировать Сообщить модератору
 Re: Поиск текста и скролл к верхней границе в TMemo  [new]
Гаджимурадов Рустам
Member

Откуда:
Сообщений: 57686
YuRock> А разве нельзя простой SetSel сделать на нужный
YuRock> номер символа? Разве он видимым не станет?

Видимым станет, но не станет "верхним".
Впрочем, я не в курсе, может есть соотв.
сообщение и пр., позволяющее сделать
его как раз "верхним" (сомневаюсь).

Posted via ActualForum NNTP Server 1.5

4 дек 17, 01:57    [21002945]     Ответить | Цитировать Сообщить модератору
 Re: Поиск текста и скролл к верхней границе в TMemo  [new]
Tactical Nuclear Penguin
Member

Откуда: холодно тут
Сообщений: 2420
procedure GotoLineNo(Control:TCustomEdit; LineNo:integer);
begin
   Control.SelStart := Control.Perform(EM_LINEINDEX,LineNo,0);
   Control.Perform(EM_SCROLLCARET,0,0);
end;
4 дек 17, 06:47    [21003012]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить