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..: http://www.delphican.com/interposer-clas...nilir.html).
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  SQL Table Type parametre gecisi hakkında (Çözüldü) adelphiforumz 1 397 09-04-2026, Saat: 15:53
Son Yorum: adelphiforumz
  Video Oynatma Hakkında adelphiforumz 7 1.088 17-12-2025, Saat: 07:36
Son Yorum: mrmarman
  nduWlanAPI Kullanımı hakkında nurah 3 1.076 09-09-2025, Saat: 09:33
Son Yorum: RAD Coder
  AES Şifreleme Hakkında tmrksmt 25 7.085 06-09-2025, Saat: 22:12
Son Yorum: delphi.developer
  SuperObject dosyaları hakkında adelphiforumz 2 796 18-06-2025, Saat: 11:02
Son Yorum: engerex



Konuyu Okuyanlar: 1 Ziyaretçi