zaznaczenie tekstu w memo

0

Witam! Pisze program który pozwoli mi wprowadzać komentarze do plików php. Po wprowadzeniu go chciałbym by się zaznaczyło pole w którym trzeba ten komentarz wpisać. Mam taki kod:

procedure TForm2.php1Click(Sender: TObject);
var
wiersz,pozycja:integer;
begin
pozycja:=memo1.CaretPos.y;
wiersz:=memo1.CaretPos.x;
memo1.Lines.Strings[pozycja]:=memo1.Lines.Strings[pozycja]+' <? /* tu wstaw komentarz */ ?>';
with memo1 do
   begin
      SelStart:=wiersz;
      SelLength:=length(memo1.Lines.Strings[pozycja])-wiersz;
      SetFocus;
   end;
end;

i chodzi mi o to że polecenie to zaznacza tekst od początku memo a nie od początku linii w której znaduje się kursor :/ chciałbym zaznaczyć tylko komentarz a nie całośc od początku. Ja nie widzę tutaj żadnego błędu prawdopodobnie używam złych poleceń proszę o pomoc..

0

Pozycję kursora w "znakach" od początku tekstu wylicza się w taki sposób:

with memo1 do
  char_index:=Perform(EM_LINEINDEX,CaretPos.y,0)+CaretPos.x;

Wartość tą podstaw pod SelStart zamiast memo1.CaretPos.x

Do poczytania EM_LINEINDEX Message

Tylko ten sposób działa zdaje się tylko w TRichEdit a nie w TMemo - nie sprawdzałem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1