![]() |
Re: Einige Methoden in mehreren Klassen verwenden?
Einen Hauch von MultiInheritance gibt's mit den class helpers in D2005.
Eklig wird's wenn er ab 2 Punkten in 2 getrennten Ästen in seiner Hierarchie diese Funktionen haben will. Da ich kaum glaube, dass dizzy die Lösung geliefert hat* wäre es mal ganz gut seine Meinung zu hören... *nix gegen dich, ich denke nur einfach Pseudo ist nicht so ein Noob ;) |
Re: Einige Methoden in mehreren Klassen verwenden?
Zitat:
So wie ich das Ganze sehe, steht der Waldteufel aufm Schlauch. Der Unterschied zwischen:
Delphi-Quellcode:
und
type
TMainClass = class(TClientSocket) [...] TClass1 = class(TMainClass) ...
Delphi-Quellcode:
ist doch quasi nicht vorhanden. Und wenn man diese Methoden nicht überall benötigt, schiebt man halt noch eine Klasse dazwischen.
type
TMainClass = class(TClientSocket, TKlasseMitDenMethoden) [...] ... |
Re: Einige Methoden in mehreren Klassen verwenden?
Hi.
Pseudemys Nelsoni will eine von seinem Beispiel unabhängige Klasse. Sowas wie ein Interface, nur mit bereits implementierten Methoden. ;-) @Sanchez: Wenn ich dich richtig verstehe, ist bei dir TMainClass die Klasse mit den Methoden. Ja? Gut. Was ist, wenn ich TMainClass noch wo anders brauche, wo ich aber von TComboBox ableiten muss? ;-) |
Re: Einige Methoden in mehreren Klassen verwenden?
Ach Leute,
wieso hört ihr einander nicht zu? Die Lösung steht oben schon mehrfach, lest einfach mal und DENKT mit. |
Re: Einige Methoden in mehreren Klassen verwenden?
Zitat:
|
Re: Einige Methoden in mehreren Klassen verwenden?
Zitat:
Also:
Delphi-Quellcode:
type TKlasseMitMethoden = class
protected FObjekt: TVorfahrVonDenGewünschtenKlassen; procedure MachWasMitFObjekt; ... end; TKlasseMitComboBox = class(TKlasseMitMethoden) public constructor Create(_owner : TComponent); ... end; TKlasseMitIrgendeinemAnderenObjekt = class(TKlasseMitMethoden) public constructor Create(_owner : TComponent); ... end; ... TKlasseMitComboBox.Create(_owner : TComponent); begin FObjekt := TComboBox.Create(_owner); end; TKlasseMitComboBox.Create(_owner : TComponent); begin FObjekt := TIrgendeinAnderesObjekt.Create(_owner); end; |
Re: Einige Methoden in mehreren Klassen verwenden?
Moin,
ui da sind aber viele Posts :shock: . Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Also nochmal: Gehen wir mal davon aus das ich eine Methoen-Klasse erstellt habe die ich in unterschiedlichen Klassen "einbinden" will. Meinet wegen sieht sie so aus:
Delphi-Quellcode:
So, der implementations-Teil ist natürlich auch geschrieben, aber den muss ich hier ja nicht mit schreiben ;)
TMethodClass = class(TObject)
private function func1: Integer; function func2: Integer; function func3: Integer; end; Nun habe ich meine Hauptklasse, sie ist von TClientSocket abgeleitet. So, da das nun so ist, wie kann ich da gleichzeitig von TMethodClass erben? Wie ich bereits gelesen hab geht das nicht, das ist natürlich doof. Vielleicht hat ja noch jemand ne Idee, sonst übernehm ich wohl das von SirThornberry. Auch wenn mir das nichtmehr nach OOP aussieht :( Danke an alle schonmal für die Antworten ;) |
Re: Einige Methoden in mehreren Klassen verwenden?
@Pseudo: Hast du meinen letzten Beitrag gelesen? Ich schätze, diese Methode ist bei dir Anwendbar.
|
Re: Einige Methoden in mehreren Klassen verwenden?
Moin Sanchez,
jo habe ich ;) aber: Zitat:
|
Re: Einige Methoden in mehreren Klassen verwenden?
@Pseudo: Wenn du das so wie in meinem Beispiel machst musst du ja auch nich unbedingt eine "globale" funktion aufrufen sondern könntest auch eine Klassenmethode aufrufen (also eine methode vor der class steht)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 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