Weil ich habe folgende Klassen:
Delphi-Quellcode:
TPersonZeile = class(TZeile);
TLehrerZeile = class(TPersonZeile);
TSchuelerZeile = class(TPersonZeile);
Das Problem ist, dass hier schon die Struktur falsch ist. Wenn du auf TPersonZeile prüfen willst, dann wirst du automatisch alle anderen auch bekommen, da diese ja alle von TPersonZeile abgeleitet wurden und dementsprechend alle Methoden und Funktionen haben, die TPersonZeile ja auch hat. Du müsstest dafür einen eigenen Typ nehmen oder TLehrerZeile und TSchuelerZeile auch von TZeile ableiten.
Bernhard
PS: Dass der is-Operator auch Vorfahren-Klassen akzeptiert ist sogar gewünscht. Sonst hätte die
VCL allerhand Probleme, weil sie sonst nicht dynamisch mit selbst erstellten Klassen zurecht käme und du unter anderem auch ein einfaches Drag&Drop vergessen kannst. (Dort wird die Prüfung ja immer verwendet)
PS2: Wie will denn die
VCL Bilder anzeigen, wenn sie nicht auf
is TGraphic
prüfen kann?