Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Abfragen mit der Maus aus einem ToolbarWindow32-Control (https://www.delphipraxis.net/122834-abfragen-mit-der-maus-aus-einem-toolbarwindow32-control.html)

zero_x 22. Okt 2008 22:25


Abfragen mit der Maus aus einem ToolbarWindow32-Control
 
Hallo liebe Community,

ich möchte abfangen unter welchem Eintrag sich die Maus bei einem ToolbarWindow32-Control bzw. der Taskbar befindet. Sobald man die Maus über einen der Buttons oder Schaltflächen bewegt kann man erkennen, dass es ein leichtes schimmern den jeweiligen Button hervorhebt. Nach genauen betrachten fällt einen auf, dass dieses Control nur einen Handle(HWND) besitzt, aber weitere Eintrage auf diesem "draufliegen".

Nun habe ich länger nach einer Möglichkeit gesucht das abzufagen, jedoch nichts gefunden. Könnte mir da jemand weiterhelfen?

zero_x :wall:

turboPASCAL 23. Okt 2008 00:25

Re: Abfragen mit der Maus aus einem ToolbarWindow32-Control
 
Was ist ein ToolbarWindow32-Control ? :gruebel:

toms 23. Okt 2008 04:20

Re: Abfragen mit der Maus aus einem ToolbarWindow32-Control
 
Zitat:

Zitat von turboPASCAL
Was ist ein ToolbarWindow32-Control ? :gruebel:

Bei der Schnellstartleiste (Quick Launch) handelt es sich z.B um ein ToolbarWindow32-Control

Ich habe in diesem Beitrag mal etwas ähnliches geschrieben. Dem Parameter hwndTaskbar kannst du das Handle des ToolbarWindow32 Controls übergeben.

Delphi-Quellcode:
function GetWinHandleFromTBButton(hwndTaskbar: HWND; pt: TPoint): HWND;

zero_x 23. Okt 2008 12:10

Re: Abfragen mit der Maus aus einem ToolbarWindow32-Control
 
Und wie kann man dann abfragen unter welchen Eintrag(Button) sich die Maus in der Taskleiste befindet? Sagen wie mal ich fahre mit der Maus über einer dieser Button dann müssten doch eigentlich Nachrichten wie z.B. WM_MOUSEMOVE stattfinden. Wie kann ich dann die Nachrichten abfangen und den Handle der Fensters herausfinden? :gruebel:

zero_x

DeddyH 23. Okt 2008 12:15

Re: Abfragen mit der Maus aus einem ToolbarWindow32-Control
 
Ins Blaue geraten:
Delphi-Quellcode:
WindowHandle := WindowFromPoint(Mouse.CursorPos);
Wäre zumindest einen Versuch wert.

zero_x 23. Okt 2008 12:27

Re: Abfragen mit der Maus aus einem ToolbarWindow32-Control
 
Nein, das funktioniert leider nicht, da das Control nur einen Handle hat und auf diesen wiederrum Buttons sind. Aber versuchen schadet ja nicht. :)

toms 23. Okt 2008 12:33

Re: Abfragen mit der Maus aus einem ToolbarWindow32-Control
 
Zitat:

Zitat von zero_x
Nein, das funktioniert leider nicht, da das Control nur einen Handle hat und auf diesen wiederrum Buttons sind. Aber versuchen schadet ja nicht. :)

Zitat:

Delphi-Quellcode:
WindowHandle := WindowFromPoint(Mouse.CursorPos);

Dies liefert dir ja das Handle zum Control unter der Maus. z.B vom ToolbarWindow32-Control.
Danach kannst du GetWinHandleFromTBButton() aufrufen.

zero_x 23. Okt 2008 12:52

Re: Abfragen mit der Maus aus einem ToolbarWindow32-Control
 
Hey, cool :!: Vielen vielen Dank. :mrgreen:


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