Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.15;
Скачать: CL | DM;

Вниз

Покажите пример работы с array property   Найти похожие ветки 

 
volph   (2002-06-30 17:14) [0]

Покажите пример работы с array property


 
Anatoly Podgoretsky ©   (2002-06-30 17:33) [1]

Тема в хелпе Array properties как раз с примерами


 
volph   (2002-06-30 18:20) [2]

не работает пример и не пойму его логику :(


 
Юрий Зотов ©   (2002-06-30 18:24) [3]

Повторять хелп смысла, конечно, нет. В чем конкретно проблема? Что именно не работает?


 
Anatoly Podgoretsky ©   (2002-06-30 18:30) [4]

Да требуются подробности непонимания, что именно, а так работа не отличается от работы с обычным массивов, например Pixels[x,y] наглядный пример свойства с друхмерным массивом, Mermo.Lines[N] одномерный


 
Бурундук   (2002-06-30 19:23) [5]

Простейший пример

TTest = class
private
FData: array of Integer;
public
function GetData(Index: Integer): Integer;
procedure SetData(Index: Integer; Value: Integer);
property Data[Index: Integer]: Integer read GetData write SetData; // default;
end;

function GetData(Index: Integer): Integer;
begin
if (Index > 0) and (Index < Length(FData)) then
Result := FData[Index]
else
Result := 0; // raise ...;
end;

procedure SetData(Index: Integer; Value: Integer);
begin
if (Index > 0) and (Index < Length(FData)) then
FData[Index] := Value
else
; // raise ...;
end;

И работаешь с Test.Data как с массивом

default означает, что ты можешь написать как
Test.Data[i], так и просто Test[i]

Index не обязательно должен быть целым, это может быть что угодно, хоть строка или объект.

Индексов может быть несколько:
property Data[Name: string; Index: Integer{...}]...



 
volph   (2002-06-30 19:37) [6]

А если индекс не целое число а строка?


 
Юрий Зотов ©   (2002-06-30 20:06) [7]

См., например, в исходниках модуля Classes свойство Values у объекта TStrings (TStringList).


 
Anatoly Podgoretsky ©   (2002-06-30 20:19) [8]

Так и осталось непонятным, то ли ты хочешь использовать, то ли хочешь создать компонент с индексными саойствами?



Страницы: 1 вся ветка

Текущий архив: 2002.07.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
1-47321
AlexSh
2002-06-27 12:11
2002.07.15
Как в отчете выделить строки?


3-47197
GrEG
2002-06-11 09:30
2002.07.15
Ограничение на длину индексируемого поля DBASE


3-47118
MikeFW
2002-06-21 10:31
2002.07.15
Проблемы со скоростью обработки TQuery записей из базы данных


1-47310
shiva502
2002-06-27 14:40
2002.07.15
TEdit не воспринимает Unicode


1-47465
marat2002
2002-06-27 12:06
2002.07.15
Где описана функция MakeWord