![]() |
auf button ereignisse reagieren?
Nabend.
Wie ich das in Erinnerung habe, kann man ja einfach einen Button aufs Formular klatschen und dann schreiben
Delphi-Quellcode:
und diese Prozedur wird ausgeführt wenn der Button geklickt wird,
Button1.OnClick := ...
auch wenn sich das Parent des Buttons geändert hat, ich also z.B
Delphi-Quellcode:
benutzt habe.
Button1.ParentWindow := GetDesktopWindow;
Nun meine Frage: Wie klappt sowas Non VCL? Die Buttons senden keine Nachrichten mehr an mein Hauptfenster und WM_NOTIFY klappt nur für Common Controls (Progressbar, Treeview etc) aber nicht für die Standardcontrols wie Button oder Edit. Hat jemand ne Ahnung was ich meine und / oder wie das geht? :) Danke schonmal |
Re: auf button ereignisse reagieren?
Was für einen Sinn soll es haben das ParentWindow zu ändern?
|
Re: auf button ereignisse reagieren?
![]() ==> Soll doch egal sein. Ich möchts halt gerne wissen, weil ichs auch brauche für n Prog. |
Re: auf button ereignisse reagieren?
Zitat:
|
Re: auf button ereignisse reagieren?
|
Re: auf button ereignisse reagieren?
Zitat:
Zitat:
Das Problem ist aber, dass der Button der jetz auf dem Desktop statt auf meinem Anwendungsfenster ist jetzt nicht mehr reagiert. Sprich es wird kein WM_COMMAND mehr an mein Fenster gesendet wenn er geklickt wird. Also kann ich auch nicht überprüfen ob er geklickt wird (oder doch? :stupid: ) non VCL! |
Re: auf button ereignisse reagieren?
Zitat:
Ich z.B. verstehe deine Bemerkung "non VCL" nicht. Ich kann jedenfalls aus einer "normalen" Anwendung (Form1, hübsch sichtbar, mit Buttons und so) einen der Buttons auf den Desktop legen. Dieser ruft bei Klick immer noch seine in der Anwendung befindliche OnClick-Routine auf. Aber sowas meintest du wohl nicht, oder? |
Re: auf button ereignisse reagieren?
Moin Ingo,
Zitat:
Kein TApplication-Objekt, keine TForms, keine TButton usw. |
Re: auf button ereignisse reagieren?
Moin Christian,
Zitat:
Ich hatte mich nur irritieren lassen hierdurch: Zitat:
Zitat:
Zitat:
Stattdessen kam eine Antwort, die ich dann so interpretiert hatte, dass er doch irgendwie ein TButton hat, diesen auch benutzt und bearbeitet (ParentWindow) und lediglich nicht sagen will, wofür das ganze gut sein soll. Sowas kommt von blöden Antworten. :angel2: Nun denn, mein (VCL-)Lösungsansatz hat sich damit verflüchtigt. Der Vollständigkeit halber für die Interessierten hier kurz erwähnt: Um einen VCL-Button auf den Desktop zu legen und seine Clicks weiter zu empfangen, muss man nämlich (mindestens) solches tun:
Delphi-Quellcode:
Klinke mich damit hier aus.
Button.Parent:=nil;
Button.ParentWindow:=GetDesktopWindow; Button.ControlStyle:=Button.ControlStyle+[csClickEvents]; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:22 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