![]() |
Delphi-Version: 5
Typ einer Objektinstanz prüfen
Hallo Allerseits,
wie kann ich in Delphi überprüfen, ob ein Objekt / eine Objektinstanz eine Instanz einer bestimmten Klasse ist (in Java gibt es dafür wohl den Befehl "instance of")? Vielen Dank schon mal... |
AW: Typ einer Objektinstanz prüfen
geht das nicht mit
Delphi-Quellcode:
also
is
Delphi-Quellcode:
das Problem dabei war glaub das es die Vorfahren auch als Tirgendwas erkennt, oder so...
if object is Tirgendwas then ..
|
AW: Typ einer Objektinstanz prüfen
Probier es mal mit
Delphi-Quellcode:
ClassType
Zitat:
Somit würde sich folgendes nicht linken lassen:
Delphi-Quellcode:
Macht also keinen Sinn ;)
[...]
private oFoo : TLabel; [...] if oFoo is TEdit then [...] |
AW: Typ einer Objektinstanz prüfen
Also entweder mit "is", wobei "is" auch "true" bei der Überprüfung auf Elternklassen liefert:
Delphi-Quellcode:
oder per ClassType:
if Button is TButton then // true
if Button is TWinControl then //true if Button is TObject then // true if Button is TListbox then // false
Delphi-Quellcode:
Oder wenns unbedingt sein muss auch über den Classname. Ist aber meiner Meinung nach die hässlichste Methode!
if Button.ClassType = TButton then // true
if Button.ClassType = TWinControl then // false if Button.ClassType = TObject then // false if Button.ClassType = TListbox then // false |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz