Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2014.10.05;
Скачать: [xml.tar.bz2];

Вниз

не видно свойства класса   Найти похожие ветки 

 
coder123   (2013-10-25 12:43) [0]

почему не видно свойств класса:


unit Unit2;

interface

type
 TItem = class of TData;
 TData = class
 private
   FID: Integer;
 public
   property ID: Integer read FID write FID;
 end;

implementation

end.



unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs,

 Unit2;

type
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
 Item: TItem;
begin
 Item. //<- как обратиться к ID
end;

end.


 
RWolf ©   (2013-10-25 13:06) [1]

Никак, в TItem нет такого свойства.


 
DVM ©   (2013-10-25 13:22) [2]


> coder123   (25.10.13 12:43) 

TItem это метакласс. Его экземпляр это - класс TData, но класс TData и экземпляр класса TData это разные вещи.


 
[ВладОшин] ©   (2013-10-25 13:28) [3]


> в TItem нет такого свойства.

+1
Item должен быть TData

зато можно
var
Item: TData;
begin
Item := TItem.Create;
Item.ID
end;


 
DVM ©   (2013-10-25 13:44) [4]


> coder123   (25.10.13 12:43) 

Если исправить вот так:

TItem = class of TData;
TData = class
private
  class var FID: Integer;
public
  class property ID: Integer read FID write FID;
end;


то свойство ID будет видно, т.к. относится к классу TData, а не его экземпляру.


 
Palladin ©   (2013-10-25 14:48) [5]


>  TItem = class of TData;

Зачем ты использовал эту конструкцию?



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

Форум: "Начинающим";
Текущий архив: 2014.10.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.002 c
15-1393262712
Дмитрий СС
2014-02-24 21:25
2014.10.05
Trial


15-1393422219
tmp
2014-02-26 17:43
2014.10.05
Железо. Совместимость шин PCIe16 и PCIe1.


15-1387389158
wl
2013-12-18 21:52
2014.10.05
Перевод с японского.


11-1255007559
Валера
2009-10-08 17:12
2014.10.05
Шрифт size


8-1234686127
Зашибис
2009-02-15 11:22
2014.10.05
Потоковое видео с IP-камеры AVIOSYS 9060A-MP на форме D6





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский