AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Globale Änderung an TForm

Ein Thema von Assertor · begonnen am 20. Apr 2007 · letzter Beitrag vom 24. Apr 2007
Antwort Antwort
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#1

Globale Änderung an TForm

  Alt 20. Apr 2007, 22:13
Hallo DPler!

Ich suche eine Möglichkeit, die CreateParams, WMSyscommand und WMActivate global für alle TForms in einer Anwendung zu ersetzen. Ziel ist es, ohne Forms.pas Änderung verschiedene TForm Anpassungen per Unit einzubinden.

Damit möchte ich vermeiden, in jedem Form der Anwendung die Änderungen an CreateParams etc. zu erfassen, damit dies nicht vergessen wird.

Ich habe schon etwas in Richtung
Delphi-Quellcode:
  TMyCustomFormHelper = class helper for TForm bzw. TCustomForm
  protected
    procedure CreateParams(...); override;
    ...
  end;
versucht, aber dies geht ebenso wenig wie eine Neuzuweisung der TForm Classe im Sinne von:
Delphi-Quellcode:
  TmyCustomForm = class(TCustomForm);
  protected
    procedure CreateParams(...); override;
  end;

  TForm = class(TmyCustomForm);
An sich sollte die letzte Klassenzuweisung TForm doch klarmachen, daß es von TmyCustomForm abstammt, nicht von TCustomForm. Oder?

Gruß winkel79
Frederik
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Globale Änderung an TForm

  Alt 20. Apr 2007, 22:16
Ich würde TmyCustomForm in der Objektablage ablegen und dann die Formulare von diesem ableiten.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Globale Änderung an TForm

  Alt 20. Apr 2007, 22:17
der zweite ansatz sollte funktionieren. wobei auch
TForm = TmyCustomForm; genügen sollte anstelle von
TForm = class(TmyCustomForm); denn du willst ja nicht nochmal von TMyCustomForm ableiten sondern einfach sagen das TForm dein TMyCustomForm ist.
Aber Classhelper musst du da nicht nutzen. und dann musst du überhall in deinen formular-units deine neue unit hinter der forms unit einbinden.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#4

Re: Globale Änderung an TForm

  Alt 24. Apr 2007, 17:35
Hallo,

danke für die Antworten! Das mit der Objektablage ist ein gangbarer Weg. Die Zuweisung TmyCustomForm = TForm geht auch, aber natürlich nur wenn diese in allen Units in der uses steht.

Ich werd nochmal etwas grübeln!

Gruß winkel79
Frederik
  Mit Zitat antworten Zitat
Antwort Antwort


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:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz