PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : WM_MDICREATE abfangen



Andreas Böhme
25.10.2005, 08:27
Hi Leut,
Ich möchte in meinem Main-Formular die WM_MDICreate - Botschaft abfangen, um im Anschluss an das erzeugte MDI-Formular Manipulationen vorzunehmen (Ich will nicht in jedem Formular die Routine codieren, die ich benötige).

Leider erreiche ich die Message nicht.
Ich arbeite noch mit D4.
Ich habe sowohl die Application.OnMessage als auch die WNDProc- Procedure verwendet, aber es greift nicht.
Wenn ich jedoch eine andere Message abfange (z.B. WM_KEYDOWN) klappt's.

Was kann ich da falsch machen?
Gibt es im Main-formular noch eine Eigenschaft, die ich erst setzen muss?
Ich habe auf die Schnelle nix brauchbares gefunden.

thx

Andreas

AndreasLinke
25.10.2005, 11:47
Wenn du diverse Proceduren in den Formularen immer wieder
benötigst, schreibe doch eine abgeleitete Formularklasse.

mit den entsprechenden funktionen, oder
bei mehr komplexität eine eigene Klasse für die Logik

dann kannst du dir eine Procedure vom Typ des Ereignisses
schreiben und diese zur Laufzeit zuweisen.

Gruß Andrea

Andreas Böhme
25.10.2005, 12:06
Danke,
aber mein Projekt lebt schon fast 10 Jahre und besteht aus ca. 500 Forms. Hier nachträglch die Standardklasse für das TForm zu ändern und diese dann in die nächst höheren Delphi Versionen zu integrieren, ist glaube ich nicht nicht so toll.

Ich hab halt nach einer "einfachen, intelligenten" Lösung gesucht ;)

Andrea

AndreasLinke
25.10.2005, 12:11
Mit Gexperts ist das kein Problem , du kannst die Komponenten damit einfach umbenennen

AndreasLinke
25.10.2005, 12:12
sorry ich meinte nätürlich die Klasse