Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   mouse focus follow (https://www.delphipraxis.net/35512-mouse-focus-follow.html)

Beckman 8. Dez 2004 11:30


mouse focus follow
 
hat jemand sowas schon gemacht, oder kennt jemand ein tool, das so sowas machen kann?

seonst will ich notfalls gesagt bekommen, wie ich mir selbst sowas theoretisch machen kann...


ich will, dass programme in windows focus gesetzt werden, nur wenn man mit der mouse drueber geht.
als naechste stufe will ich, dass desktop und taskleiste aus der regel ausgeschlossen sind.


wenn keiner sowas kennt, kann mir vil wer sagen, wie ich sowas angeh?


es muss nich mal in vordergrund kommen...

ahm, eigentlich will ich nur das fenster handle haben von dem fenster, das unter meiner mouse is......

Steve 8. Dez 2004 11:39

Re: mouse focus follow
 
Hi,

schau Dir mal MSDN-Library durchsuchenWindowFromPoint an, evtl auch noch Delphi-Referenz durchsuchenGetCursorPos
Damit erhälste das Handle des Fensters unter dem Cursor.

Gruß
Stephan :dance: :xmas:

Beckman 8. Dez 2004 11:46

Re: mouse focus follow
 
danke, sehr gut.

Alex_ITA01 8. Dez 2004 11:57

Re: mouse focus follow
 
passt zwar nicht ganz hier rein aber es gab doch auch eine Funktion, die mir ein Handle von der Komponente unter der Maus zurück gibt.Ich weiß nur nicht mehr wie die heißt...
Es wäre nett wenn mir da jemand ein Tip geben könnte...
MFG Alex

Beckman 8. Dez 2004 12:11

Re: mouse focus follow
 
es funkt jedenfalls recht super mit 100ms timer und das sollte auch nich zu viel fuers system sein...


Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var
  curpos: TPoint;
begin
getcursorpos(curpos);
label1.Caption := inttostr(integer(windowfrompoint(curpos)));
end;

danke!

Beckman 8. Dez 2004 12:34

Re: mouse focus follow
 
mhmm...

mit windows.SetFocus(window); muesste es laut hilfe funkten focus zu setzetn auf das neue window-handle...


aber es tut nich wirklich.......

setactivewindow tuts eigentlich auch net.

das einzige, was funkt is SetForegroundWindow, aber das schmeisst das ganze prog in vodergrund, und das will ich ja net.
ich will schreiben, auch wenns bissi ueberdeckt ist......


hat wer darueber bessere kenntnisse?



update:

so funkts gar net:
Delphi-Quellcode:
SetWindowPos(window, 0, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE);
windows.SetFocus(window);

so funkts einiger massen:

Delphi-Quellcode:
SetWindowPos(window, 0, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE);
windows.SetFocus(window);


kann es sein, dass windows einer app, die net im vordergrund steht, bzw 'aktiv' is, gar net keystroke-focus geben kann???


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