memo текущая строка

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

memo текущая строка

Сообщение rellai2 » 23.12.2010 21:42:52

как узнать текущую строку(в которой аходится курсор)?
в делфи это делалось так:EditExpr.Perform(em_LineIndex, $FFFF, 0);

как в лазарусе, я так и не понял (
rellai2
постоялец
 
Сообщения: 135
Зарегистрирован: 18.09.2008 11:37:45

Re: memo текущая строка

Сообщение WindOfPain » 23.12.2010 23:29:33

Что-нибудь типа этого слепить можно:
Код: Выделить всё
function GetPosMemo(const Memo:TMemo):integer;
var
  s:string;
begin
     s:=Copy(Memo.Lines.Text,1,Memo.SelStart);
     Result:=1;
     while pos(#13#10,s)<>0 do
     begin
          delete(s,pos(#13#10,s),2);
          inc(Result);
     end;
end;


Правда, если фрагмент текста выделен, то будет возвращена строка, в которой находится начало выделения, а не текущая позиция курсора.
Аватара пользователя
WindOfPain
новенький
 
Сообщения: 33
Зарегистрирован: 01.09.2009 21:18:23
Откуда: Санкт-Петербург

Re: memo текущая строка

Сообщение Polugut » 24.12.2010 07:17:43

memo1.Lines[memo1.CaretPos.Y];
Polugut
новенький
 
Сообщения: 19
Зарегистрирован: 25.02.2010 23:50:29

Re: memo текущая строка

Сообщение rellai2 » 24.12.2010 09:01:58

Попробовал!
Второй вариант подошел, все вопросы отпали, всем спасибо)
rellai2
постоялец
 
Сообщения: 135
Зарегистрирован: 18.09.2008 11:37:45

Re: memo текущая строка

Сообщение v-t-l » 24.12.2010 15:42:35

Точно не помню, попробуй так:
Код: Выделить всё
   if key = VK_RETURN then
      begin
          EditExpr.Lines.Strings[EditExpr.CaretPos.Y]:='blablabla';
          key := 0;
      end;
v-t-l
энтузиаст
 
Сообщения: 735
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: memo текущая строка

Сообщение rellai2 » 24.12.2010 16:09:29

ага спасибо, я так тоже уже сделал, это подошло )
rellai2
постоялец
 
Сообщения: 135
Зарегистрирован: 18.09.2008 11:37:45


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 41

Рейтинг@Mail.ru