![]() |
variable einer abgeleiteten Klasse auslesen
hi,
zunächst einmal folgender code..:
Delphi-Quellcode:
tTeil = class
TeilTyp: string; Ladung, Nummer: integer; x, y: integer; aktiv: boolean; constructor init(nx, ny: integer);virtual; procedure zeichnen;virtual; function anWelchemObjekt: tTeil; end; tBuchse = class(tTeil) Verbindung: tBuchse; Typ: string; constructor init(nx, ny: integer);override; procedure zeichnen;override; end; zweiEeinA = class(tTeil) Eingang1, Eingang2, Ausgang1: tBuchse; constructor init(nx, ny: integer); override; procedure zeichnen; override; end; [....] procedure blabla; var t: tTeil; begin try ShowMessage(inttostr(aktTeil.Eingang1.Ladung)); except ShowMessage('ungültiger Typ'); end; end; das problem ist, dass 't' vom typ tTeil sein MUSS, ich in diesem aber die variable Eingang1 nicht deklarieren will (wenns ned anders geht, muss ichs halt machen..). wenn jmd was eleganteres wüsste, möge er sich bitte melden :) |
Re: variable einer abgeleiteten Klasse auslesen
Das Prinzip welche Du brauchst schimpft sich Typ-Casting.
Delphi-Quellcode:
...:cat:...
procedure blabla;
var t: tTeil; begin if aktTeil is zweiEeinA then ShowMessage(inttostr(zweiEeinA(aktTeil).Eingang1.Ladung)) else ShowMessage('aktTeil ist vom Typ: ' + aktTeil.ClassName); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:05 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 by Thomas Breitkreuz