AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Gleichnamige Eigenschaft in verschiedenen Klassen ansprechen

Gleichnamige Eigenschaft in verschiedenen Klassen ansprechen

Ein Thema von norwegen60 · begonnen am 12. Aug 2016 · letzter Beitrag vom 12. Aug 2016
 
norwegen60

Registriert seit: 23. Dez 2007
Ort: Schwarzwald
514 Beiträge
 
Delphi 12 Athens
 
#1

Gleichnamige Eigenschaft in verschiedenen Klassen ansprechen

  Alt 12. Aug 2016, 13:03
Delphi-Version: XE
Hallo,

ich suche nach einer Möglichkeit, wie ich auf eine gleichnamige Eigenschaft, z.B. das Feld "Bezeichnung" in verschiedenen Klassen zugreifen kann.
Derzeit habe ich es so gelöst:

Delphi-Quellcode:
var
  lObject: TObject;
begin
  lObject := GetObject(ID); // Kann ein Verweis auf TClass_1 oder TClass_2 zurückgeben

  if assigned(lObject) then
  begin
    if lObject is TClass_1 then
      with lObject as TClass_1 do
       Text := Bezeichnung
    else if lObject is TClass_2 then
      with lObject as TClass_2 do
       Text := Bezeichnung;
  end;
end;
Das ist aber bei umfangreichen Arbeiten mit der Klasse aufwändig, da alles doppelt implementiert ist. Im realen Fall sind es auch mehere Eigenschaften die verwendet werden. Möglichkeit wäre natürlich, diese Eienschaften in eine gemeinsame Basisklasse zu legen, dummerweise ist diese aber schon definiert und wird beliebig oft für anders verwendet wo diese Eigenschaften nicht benötigt werden.

Gibt es eine Möglichkeit ohne die Klassenstruktur zu ändern?

Danke
Gerd
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:09 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