AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Klasse um etwas ergänzen

Ein Thema von BenjaminH · begonnen am 8. Jun 2007 · letzter Beitrag vom 8. Jun 2007
Antwort Antwort
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#1

Klasse um etwas ergänzen

  Alt 8. Jun 2007, 12:18
Hallo,
ich habe eine Funktion, die als Parameter ein TControl erwartet, um dann etwas damit zu machen.procedure ControlFadeIn(Control: TControl); Jetzt denke ich mir, dass es zweckmäßiger ist, das als Methode eines Objekts zu haben. Allerdings sollte das bei jedem Control auf meiner Form funktionieren:
Delphi-Quellcode:
Panel.FadeIn;
GroupBox.FadeIn;
usw
Meine Idee war, diese:
Delphi-Quellcode:
TControl = class(Controls.TControl)
  published
    procedure FadeIn;
  end;
Hat nicht wirklich den gewünschten Effekt, d.h. keinen, der Aufruf von Panel.FadeIn wird als undefinierter Bezeichner angekreidet.
Gibt es einen Weg, wie ich die Klasse TControl um meine Methode ergänzen kann, sodass alle Nachfahren auch diese Methode haben? Class Hacks sind keine Option!

Viele Grüße,
Benjamin
Benjamin
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Klasse um etwas ergänzen

  Alt 8. Jun 2007, 12:41
Hallo Benjamin,

Zitat:
Class Hacks sind keine Option!
Ich hoffe, du meinst keine Class Helper:

Delphi-Quellcode:
type
  TControlHelper = class helper for TControl
  public
    procedure FadeIn;
  end;

procedure TControlHelper.FadeIn;
begin
  ShowMessage ('Hello from ' + ClassName);
end;
Danach verfügen alle TControl-Nachfolger über die neue Methode.

Hier noch ein interessanter Artikel zum Thema "Class Helper".

Gruß Hawkeye

[edit=Phoenix]Url korrigiert. Die hatte sich wohl geändert. Mfg, Phoenix[/edit]
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Klasse um etwas ergänzen

  Alt 8. Jun 2007, 12:50
Boah das ist ja eine wunderschöne Lösung! Genau so habe ich mir das Vorgestellt
Danke!
Nur die IDE macht das nicht so toll, sobald ich for schreibe will er mir hier eine Schleife andrehen.
Egal, trotzdem geil.
Benjamin
  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 06:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf