Delphi-PRAXiS

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 Wie kann man Hintfenster mit aktiven Controls erstellen? (https://www.delphipraxis.net/183169-wie-kann-man-hintfenster-mit-aktiven-controls-erstellen.html)

ULIK 17. Dez 2014 11:36

Wie kann man Hintfenster mit aktiven Controls erstellen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Servus,

Ich suche eine Möglichkeit, ein Hintfenster mit eigenen Controls zu versehen (Button, Memo) und zwar so, daß bei Aktivierung der Controls die aufrufende Anwendung den Fokus nicht verliert. Ich hab zwar über ableiten von THintWindow das Fenster mit Controls erweitern können, aber sobald ich die anklicke, ist der Fokus weg von meiner aufrufenden Anwendung.

Um es mal bildlich zu machen: ich suche eine Möglichkeit, die Adobe 'Sticky Notes' Fenster in Delphi nachzubauen (incl. Semitransparenz)

Hat jemand eine Idee, wie man das machen könnte oder gibt es eventuell das schon irgendwo?


Grüße,
Uli

himitsu 17. Dez 2014 11:47

AW: Wie kann man Hintfenster mit aktiven Controls erstellen?
 
Antwort: Garnicht.

Zitat:

Zitat von ULIK (Beitrag 1283754)
aber sobald ich die anklicke, ist der Fokus weg von meiner aufrufenden Anwendung.

Wenn das Hint-Fenster zu deiner Anwendung gehört, bleibt der Fokus natürlich bei deiner Anwendung, aber das andere Fenster verliert natürlich den Fokus, denn nur ein Fenster kann den Fokus besitzen.

Maximal mit einem Button könntest du das hinbekommen, wenn durch das Anklicken weder der Button (siehe SpeedButtons) noch die Hint-Form den Fokus bekommt.
Aber bei Edit und Co. kannst du es vergessen.


Alternativ ein böser Hack, welcher Maus- und Tastatureingaben abfängt, auf dein Hint-Window umleitet und den Fokus bei der anderen Form belässt.

BadenPower 17. Dez 2014 19:20

AW: Wie kann man Hintfenster mit aktiven Controls erstellen?
 
Wenn Du nur willst, dass das Fenster aussieht als wäre es aktiv, dann kannst Du die Funktion DefWindowProc nutzen und in einem Eventhandler des HintWindows ein WM_NCACTIVATE an das entsprechende Fenster schicken.


DefWindowProc(FormWelcheAktivAussehenSoll.Handle,W M_NCACTIVATE,-1,0);

cbspeda 4. Jan 2015 18:40

AW: Wie kann man Hintfenster mit aktiven Controls erstellen?
 
Warum überhaupt mit einem Fenster ?

Bei Firemonkey kannst du dir ja im Stylebook ein Fenster als Control selber erstellen. Vor allem viel schneller.

Früher wies noch VGSCENE war hat dies HUDWindow geheißen.
Dies kann man mit Firemonkey ganz einfach nachbauen

Liebe Grüsse Peter


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:57 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