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

Вниз

Property   Найти похожие ветки 

 
9899100   (2008-12-16 13:34) [0]

Подскажите плииз
запутался :)
есть класс
TMyClass=class
  fUse:Array[1..10] of Boolean;
 
  function ReadUse(Index:Integer):Boolean;
 
 public
   ....
  property Use[Index:Integer]:Boolean read ReadUse;
end;

Function TMyClass.ReadUse;
Begin
result:=fUse[Index];
End;

таким образом можно читать из этого свойства
а как должна выглядеть процедура записи
чтобы можно было в экземпляре класса
написать

ttt.Use[2]:=True;


 
Сергей М. ©   (2008-12-16 13:38) [1]

property Use[Index:Integer]:Boolean read ReadUse write WriteUse;

Теперь ставишь курсор ввода на декларацию своего класса, жмешь CTRL-SHIFT-C и - о чудо ! - Делфи сама нарисовала все что тебе нужно)


 
Ega23 ©   (2008-12-16 13:43) [2]

TMyClass=class
private
 fUse:Array[1..10] of Boolean;

 function GetItem(Index: Integer): Boolean;
 procedure SetItem(Index: Integer; const Value: Boolean);
public
 property Items[Index:Integer] : Boolean read GetItem write SetItem; default;
end;

function TMyClass.GetItem(Index: Integer): Boolean;
begin
 if (Index<Low(fUse)) or (Index>High(fUse)) then
   raise Exception.Create("Index out of bounds");
 Result :=  fUse[Index];
end;

procedure TMyClass.SetItem(Index: Integer; const Value: Boolean);
begin
 if (Index<Low(fUse)) or (Index>High(fUse)) then
   raise Exception.Create("Index out of bounds");
 fUse[Index] := Value;
end;


 
9899100   (2008-12-16 13:43) [3]

>>Сергей М
шайтан

может она сама и все остальное напишет :))))))))))))


 
9899100   (2008-12-16 13:45) [4]


> Ega23 ©


точно, спасибо, чейто я не подумал про проверку индекса на интервал



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
2-1229482630
Genfyy
2008-12-17 05:57
2009.02.01
База данных


15-1228709242
Slider007
2008-12-08 07:07
2009.02.01
С днем рождения ! 8 декабря 2008 понедельник


3-1213861475
кот
2008-06-19 11:44
2009.02.01
не проходят запросы


2-1229722211
otecmaldun
2008-12-20 00:30
2009.02.01
Что надо добавить.


15-1228647249
Slider007
2008-12-07 13:54
2009.02.01
С днем рождения ! 6 декабря 2008 суббота