Возможно вопрос уже обсуждался. Если так то прошу прощения за неумение искать.
Необходимо при клике мышкой в строке TMemo выделялась вся строка, по которой кликнул пользователь.
Нашел кучу примеров для Делфи, но они не работаю в лазарусе.
Вот один из примеров который рекомендуют:
процедура
- Код: Выделить всё
procedure SelectMemoLine(Memo : TMemo) ;
var
Line : integer;
begin
with Memo do
begin
Line := Perform(EM_LINEFROMCHAR, SelStart, 0) ;
SelStart := Perform(EM_LINEINDEX, line, 0) ;
SelLength := UTF8Length(Lines[Line]) ;
end;
end;
Использование:
- Код: Выделить всё
procedure TForm1.Memo1Click(Sender: TObject) ;
begin
SelectMemoLine(Memo1) ;
end;
Странность в том, что в какую строку бы не кликал, выделяется всегда только первая строка.
Ощущение такое, что мемо автоматом ставит курсор на первую строку в первую позицию.
Как побороть или что я не правильно делаю?