Вниз
Скачать: CL | DM;

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

← →
Piero   (2004-10-31 19:12) [0]

TInscription = record       // Запись
                  f1,f2,f3,f4,f5,f6,f7   : string [50];
              end;

TUSObj = class(TObject)
private
 Inscriptions : array of TInscription;   // Массив записей
   
 function  GetInscription(NumInscr: byte): TInscription;    
 procedure SetInscription(NumInscr: byte; Value: TInscription);
 ....
 public
 ....
 property Inscript[NumIscr : byte] : TInscription read GetInscription write SetInscription;  

end;

// Чтение из масива
function TUSObj.GetInscription(NumInscr: byte): TInscription;
begin
Result:=Inscriptions[NumInscr];
end;

// Запись в массив
procedure TUSObj.SetInscription(NumInscr: byte; Value: TInscription);
begin
If NumInscr > length(Inscriptions) then Setlength(Inscriptions,NumInscr);
Inscriptions[NumInscr]:=Value;
end;

//  В программе пишу
var o1 : TUsObj;
begin
...
o1.inscript[1].f1:="jjj";

Программа не компилируется, на последнюю сточку выводится сообщение:
"Left side cannot be assigned to",
кроме этой ошибок нет.


← →
Юрий Зотов ©   (2004-10-31 19:32) [1]

type
 TInscription = record
   f1, f2, f3, f4, f5, f6, f7: string [50];
 end;

 TInscriptionArray = array of TInscription;

 TUSObj = class(TObject)
 private
   FInscriptions: TInscriptionArray;
 ...


← →
Anatoly Podgoretsky ©   (2004-10-31 19:39) [2]

А нет у тебя такого свойства


← →
GuAV ©   (2004-10-31 19:58) [3]

Нельзя так. Свойство сложного типа может быть записано только полностью. Присваивай запись целиком или юзай класс заместо записи.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
4-1097088650
Kollizion
2004-10-06 22:50
2004.11.14
Свернуть окно


14-1098841702
Думкин
2004-10-27 05:48
2004.11.14
С днем рождения! 27 октября


1-1099376510
Senti
2004-11-02 09:21
2004.11.14
Как применить стиль XP только для 1 компонента на форме ?


4-1097040756
П7
2004-10-06 09:32
2004.11.14
Консольное приложение


14-1098869043
Drakon
2004-10-27 13:24
2004.11.14
Запуск программ для Linux под Windows




   Наверх