Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Benutzer definierte Messages Handling (https://www.delphipraxis.net/134144-benutzer-definierte-messages-handling.html)

Tarry 16. Mai 2009 18:26

Re: Benutzer definierte Messages Handling
 
Zitat:

Zitat von omata
Funktioniert das Beispiel bei dir?

Ja, aber ich kann es nicht zum laufen bringen in meinem eigenem Code. :(

omata 16. Mai 2009 18:30

Re: Benutzer definierte Messages Handling
 
Schau dir mal die Deklaration der Konstanten an, die habe ich etwas anders gelöst.

Tarry 16. Mai 2009 18:49

Re: Benutzer definierte Messages Handling
 
Zitat:

Zitat von omata
Schau dir mal die Deklaration der Konstanten an, die habe ich etwas anders gelöst.

Meinst du, dass du die Constante (UM_RISEANDSHINE) nur einmal in der .pas Datei deklariert hast ?
Das macht keinen Unterschied, ich habs grade getestet.

omata 16. Mai 2009 19:15

Re: Benutzer definierte Messages Handling
 
Vielleicht ist es ja diese Zeile...
Delphi-Quellcode:
procedure TFMain.FormCreate(Sender: TObject);
begin
  Self.Caption:=cAppName;
  :

Tarry 16. Mai 2009 19:17

Re: Benutzer definierte Messages Handling
 
Zitat:

Zitat von omata
Vielleicht ist es ja diese Zeile...
Delphi-Quellcode:
procedure TFMain.FormCreate(Sender: TObject);
begin
  Self.Caption:=cAppName;
  :

Hab ich auch schon uebernommen & funktioniert immer noch nicht :(

SirThornberry 16. Mai 2009 19:18

Re: Benutzer definierte Messages Handling
 
Problem ist folgendes:
Mit FindWindow suchst du das Fenster welches als Caption 'Alarm Clock by Tarry91' hat.
Aller wahrscheinlichkeit findet FindWindow somit dein Application-Fenster der zuerst gestarteten Instanz.
Auf die Message reagierst du allerdings nicht beim Application-Object (dazu wäre die Komponente TApplicationEvents (oder so ähnlich) geeignet) sondern in einem anderen Fenster (deiner TMainForm-Instanz) an welche die Nachricht gar nicht geschickt wird.

Tarry 16. Mai 2009 19:29

Re: Benutzer definierte Messages Handling
 
Zitat:

Zitat von SirThornberry
Problem ist folgendes:
Mit FindWindow suchst du das Fenster welches als Caption 'Alarm Clock by Tarry91' hat.
Aller wahrscheinlichkeit findet FindWindow somit dein Application-Fenster der zuerst gestarteten Instanz.
Auf die Message reagierst du allerdings nicht beim Application-Object (dazu wäre die Komponente TApplicationEvents (oder so ähnlich) geeignet) sondern in einem anderen Fenster (deiner TMainForm-Instanz) an welche die Nachricht gar nicht geschickt wird.

?
Also die Message wird an der falschen Stelle erwarted ?
Wie kann ich das aendern ? Was muss ich aendern ?

Danke,
Thomas

omata 16. Mai 2009 19:34

Re: Benutzer definierte Messages Handling
 
Testweise würde ich erstmal das Application.Title auskommentieren.

Tarry 16. Mai 2009 19:41

Re: Benutzer definierte Messages Handling
 
Zitat:

Zitat von omata
Testweise würde ich erstmal das Application.Title auskommentieren.

... macht keinen Unterschied

@SirThornberry : Nachdem ich die Komponente TApplicationEvents aufs Hauptformular gezogen habe (wo die Message verwarbeited wird). Was muss ich machen ? Muss die Komponente auf alle Formulare des Programms ? Was is mit den Komponenten Ereignissen ? Ich werde nicht wirklich schlau aus der Delphi Hilfe :gruebel:

SirThornberry 16. Mai 2009 19:55

Re: Benutzer definierte Messages Handling
 
Bei TApplicationEvents musst du im Ereignis OnMessage überprüfen ob deine Message dabei ist. Wenn dies der Fall ist weißt du das deine Nachricht an eben direkt an die Application gesendet wurde.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:32 Uhr.
Seite 2 von 3     12 3      

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