Skocz do zawartości

[Delphi] – TMemo i ustalenie współrzędnych edytowanego znaku


sybic

Polecane posty

Mam komponent TMemo, a do niego załadowanych jest Y linii i o długości X każda.

Jak ustalić współrzędne X,Y edytowanego znaku?

 

i jeszcze inne pytanie - maksymalnie ile linii można załadować do tego komponentu?

Link do komentarza
Udostępnij na innych stronach

Co do pierwszego pytania to:

function TMainForm.GetCursor : TPoint;
begin
 // Line
 Result.Y := SendMessage(ConsoleMemo.Handle, EM_LINEFROMCHAR, -1, 0);
 // Char
 Result.X := ConsoleMemo.SelStart - ConsoleMemo.Perform(EM_LINEINDEX, Result.Y, 0);
 Inc(Result.Y);
end;

Natomiast co do drugiego, to dokładnie nie wiem. Po tym, że własnośc Count jest typu Integer, można wioskować, że nawet High(Integer), ale podejrzewam, że powyżej kilku tysięcy wczytywanie będzie trwało bardzo długo i może się nie powieść. Jednak to musiał byś potestować, może ktoś inny się jeszcze tutaj wypowie i sprecyzuje.

Pozdrawiam: olesio

Link do komentarza
Udostępnij na innych stronach

Obstawiałbym, że może pomieścić tyle ile pomieści typ string w Delphi a z tego co pamiętam dawno temu gdzieś czytałem, że string w delphi jest w stanie zmieścić do 2giga.

 

Oo nawet tu coś jest: http://docwiki.embarcadero.com/RADStudio/XE3/en/String_Types tylko pytanie czy to się pokrywa razem z komponentami typu TMemo. Ale obstawiałbym, że tak.

Ot taka mini-strona moja po godzinach :)http://www.wnetrzekuchni.pl

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...