Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
ClassType hakkında
#1
Selamlar

Formun üzerinde bir panel var 
bu panel üzerinde parent olarak gösterilen başka bir form mevcut

parent olan formdaki bir nesnenin üzerinde Screen.ActiveForm.Name dedigimde ilk form adı görünüyor.
nesneyi alıp parentlarını tarayarak gittiğimde ise ClassType olarak TForm nesnesine ulaşamıyorum.
Bunun nedeni ne olabilir.

Teşekkürler

procedure TForm1.a1Click(Sender: TObject);
var
   _AControl : TControl;
 I : Integer;
begin
   _AControl := TControl(Edit1);
   while _AControl <> nil do
   begin
       _AControl := _AControl.Parent;
       ListBox1.Items.Insert(0, TControl(_AControl).Name);
       if _AControl is TForm then
       begin
         Break;
       end;
   end;

end;
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#2
Uses ile bağlandığınız unitlerde TForm isimli bir sınıf tanmladıysanız aynı isme sahip olsa da bu tamamen farklı bir sınıfa karşılık gelecektir. O yüzden "if _AControl is TForm then" kıyaslaması yapmak yerine "if SameText(_AControl.ClassName, 'TForm') then" (veya "if _AControl is Vcl.Forms.TForm then") kıyaslamasını yapmayı denyin (bknz..: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.).
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Personel Yıllık İzin Hakediş Hesaplama Hakkında bkantur 2 145 04-10-2019, Saat: 18:15
Son Yorum: uparlayan
  Moduler Programlama Hakkinda TheEAK 4 252 18-09-2019, Saat: 10:43
Son Yorum: TheEAK
  IDE çoklu monitör kullanımı hakkında adelphiforumz 2 274 10-07-2019, Saat: 12:45
Son Yorum: adelphiforumz
  GarantiBBVA SFTP işlemleri hakkında adelphiforumz 4 415 09-07-2019, Saat: 10:43
Son Yorum: r3n4m3
  read ve write kullanımı hakkında alisahin 3 425 21-05-2019, Saat: 14:57
Son Yorum: alisahin



Konuyu Okuyanlar: 1 Ziyaretçi