
25.09.2010, 22:40
|
Начинающий
|
|
Регистрация: 09.11.2009
Сообщения: 145
Репутация: 238
|
|
Код:
TMemo = class(TCustomMemo)
...
end;
...
constructor TCustomMemo.Create(AOwner: TComponent);
begin
...
FLines := TMemoStrings.Create;
TMemoStrings(FLines).Memo := Self;
...
end;
...
TMemoStrings = class(TStrings)
private
Memo: TCustomMemo;
protected
function Get(Index: Integer): string; override; // Это функция, которая достает значение свойства Strings[i]
...
end;
function TMemoStrings.Get(Index: Integer): string;
var
Text: array[0..4095] of Char;
begin
Word((@Text)^) := SizeOf(Text);
SetString(Result, Text, SendMessage(Memo.Handle, EM_GETLINE, Index,
Longint(@Text)));
end;
|