Что имеем: 3 класса
TStaffs = class(TObject)
private
FidstStaff: integer;
FStaffName: Ansistring;
procedure SetIdstStaff(aValue: integer);
procedure SetStaffName(const aValue: Ansistring);
public
constructor Create(aIdstStaff: integer; const aStaffName: Ansistring);
destructor Destroy;override;
property idstStaff: integer read FidstStaff write SetIdstStaff;
property StaffName: Ansistring read FStaffName write SetStaffName;
end;
TDepartmentData = class(TObject)
private
FidstDepartment: Integer;
FidstRank: integer;
FStaffsList: TList;
protected
function GetStaffs(aIndex: integer): TStaffs;virtual;
function GetStaffsCount: integer;virtual;
public
constructor Create(aIdstDepartment: integer; aIdstRank: integer);
destructor Destroy;override;
function AddStaff(aIdstStaff: integer; const aStaffName: Ansistring): integer;
property idstDepartment: integer read FidstDepartment write FidstDepartment;
property idstRank: integer read FidstRank write FidstRank;
property Staffs[aIndex: integer]: TStaffs read GetStaffs;
property StaffsCount: integer read GetStaffsCount;
end;
TDepartment = class(TObject)
private
FDepartmentData: TList;
protected
function GetDepartment(aIndex: integer): TDepartmentData;virtual;
function GetDepartmentCount: integer;virtual;
public
constructor Create();
destructor Destroy;override;
function AddDepartment(aIdstDepartment: integer; aIdstRank: integer): integer;
property Department[aIndex: integer]: TDepartmentData read GetDepartment;
property DepartmentCount: integer read GetDepartmentCount;
end;
Вопрос: как из TDepartment добавлять Staff'ов в TDepartmentData?
Здравствуйте, Dimonka, Вы писали:
D>Department.Departments[Index].AddStaff(ID, Name);
А ещё можно сократить запись

до приличного
Department[Index].AddStaff(ID, Name);
если сделать объявление
property Department[aIndex: integer]: TDepartmentData read GetDepartment; default;
Ну и в том же духе для Staffs:
property Staffs[aIndex: integer]: TStaffs read GetStaffs; default;
... << RSDN@Home 1.1.2 beta 1 >>
The stars so gaily glistened... (Mon, 08 Dec 2003 20:35:55 GMT @899)
...while the fading voice of akasoft whispered through the darkness:
a> А ещё можно сократить запись
до приличного
Что удивительно — достаточно было бы почитать исзодники класса TOnjectList
или TStringList

--
If i had ears, i'd heard none: WinAMP de-instaled.
http://Arioch.nm.ru/FL/Fidolook_SL.png Mail: the_Arioch<at>nm<dot>ru
Posted via RSDN NNTP Server 1.8 beta
Здравствуйте, akasoft, Вы писали:
A>А ещё можно сократить запись
до приличного
...
A>если сделать объявление
...
A>Ну и в том же духе для Staffs:
...
Всё можно сделать,
лишь бы человек понял, что он делает не так..