Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

классы


EveryonE ©   (2002-02-28 18:32:00) 

есть класс TComputer.
Есть трабл с Items.

const
MaxComps = 10000;
type
TComputerType = record
Name, NetName, IP, Description: String;
end;

TComputer = class
private
FCount: Integer;
procedure SetComputers(Index: Integer; Computer: TComputerType);
function GetComputers(Index: Integer): TComputerType;
protected
Computers: array[0..MaxComps] of TComputerType;
public
constructor Create(AOwner: TComponent);
destructor Destroy; override;
property Items[Index: Integer]: TComputerType read GetComputers write SetComputers; default;
property Count: Integer read FCount;
function Add(Computer: TComputerType): Integer;
end;

var
Comps: TComputer;

Проблема:
пишу Comps.Items[0].Name := "asdasd";
ругается : Left side cannot be assigned to...
подскажите плз. Или как мне вообще создать такой Items типа TComputerType ???


Nebula   (2002-03-01 12:02:00) [1]

С record-ом такое не пройдет, используй TcomputerType = class


vuk   (2002-02-28 18:43:00) [2]

Так не получится, поскольку Вы задаете метод доступа таким образом, что присвоена может быть только запись целиком, а не отдельное ее поле. Сделайте TComputerType классом, а поля - свойствами. Тогда все будет работать.


Наверх

Титульная страница Поиск, карта сайта Написать письмо