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 Fremdes Fenster scrollen? (https://www.delphipraxis.net/140723-fremdes-fenster-scrollen.html)

gandime 24. Sep 2009 18:10


Fremdes Fenster scrollen?
 
Hi,
ich versuche ein fremdes Fenster zu scrollen, blos bis jetzt ohne Erfolg :-(
Meine bisherigen Versuche:
Delphi-Quellcode:
var
  hwnd:cardinal;
begin
  hwnd:=GetForegroundWindow;
//SB_PAGEDOWN
//  PostMessage(hwnd, WM_VSCROLL, SB_BOTTOM, 0);
//  SB_PAGEUP

//  PostMessage(hwnd, WM_MOUSEWHEEL, SB_LINEDOWN, 0);
//  PostMessage(hwnd, WM_VSCROLL, SB_LINEUP, 0);

mfg
gandime

habs hinbekommen:

Delphi-Quellcode:
var
  Inp: TInput;
begin
  Inp.Itype := INPUT_MOUSE;

  Inp.mi.dwFlags := MOUSEEVENTF_WHEEL;// MOUSEEVENTF_WHEEL = 2048  //up

  Inp.mi.dwFlags := 4096;//down

  Inp.mi.dx := x;
  Inp.mi.dy := y;
  Inp.mi.time := 0;
  Inp.mi.mouseDatA := WHEEL_DELTA;
  Inp.mi.dwExtraInfo := 0;
  SendInput(1, Inp, SizeOf(Inp));
end;

DeddyH 24. Sep 2009 19:08

Re: Fremdes Fenster scrollen?
 
Bist Du auch sicher, dass Du das richtige Handle ermittelst?

gandime 24. Sep 2009 19:10

Re: Fremdes Fenster scrollen?
 
ist das etwa das falsche?
ich möchte halt das aktive fenster scrollen aber mit meiner eben geschriebenen funktion ist es auch ohne handle möglich ;-)
edit:
als HotKey funktioniert das ganze nun leider doch nicht mehr :-(

himitsu 24. Sep 2009 20:18

Re: Fremdes Fenster scrollen?
 
Zitat:

Zitat von gandime
ist das etwa das falsche?
ich möchte halt das aktive fenster scrollen aber mit meiner eben geschriebenen funktion ist es auch ohne handle möglich ;-)

GetForegroundWindow ist das Handle eine Fensters,
aber du mußt deine Nachrichten schon an die Komponente (dessen Handle) senden, welche gescrollt werden soll
und Diese ist selten das Fenster selber.

DeddyH 25. Sep 2009 08:37

Re: Fremdes Fenster scrollen?
 
Genau, aber man kann sich ja z.B. mit WinSpy den Code zum Ermitteln des richtigen Handles generieren lassen.


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