hallo,
ich möchte gern den inhalt eines memos, also einem mehrzeiligen edit-feld, auslesen.
allerdings ist mir die größe des inhaltes (anzahl der zeichen) nicht bekannt, ich kann also nicht direkt mit WM_GETTEXT arbeiten. also hab ich im
sdk ein bisschen gesucht und EM_GETLINECOUNT, sowie EM_LINELENGTH gefunden - allerdings treten bei mir jetzt immer zugriffsverletzungen auf, ich weiss aber nicht wo (wahrscheinlich falscher indexzugriff auf die strings):
Delphi-Quellcode:
...
EN_CHANGE:
if loword(wParam) = IDC_MEMORG then
begin
x := 0;
if SendMessage(hMemOrg, EM_GETLINECOUNT, 0 , 0) > 0 then
for y := 0 to SendMessage(hMemOrg, EM_GETLINECOUNT, 0 , 0) - 1 do
Inc(x, SendMessage(hMemOrg, EM_LINELENGTH, y, 0));
SendMessage(hMemOrg, WM_GETTEXT, x, Integer(@buffer));
if Length(buffer) > 0 then // = x ?
begin
//umformung nach tmp...
end;
buffer := '';
SendMessage(hMemNew, WM_SETTEXT, 0 , Integer(@tmp));
end;
danke schonmal,
heiopei