怎么样才能捕获屏幕上的光标(包含别程序窗口)?(100分)

  • 主题发起人 主题发起人 oldrao
  • 开始时间 开始时间
O

oldrao

Unregistered / Unconfirmed
GUEST, unregistred user!
大家好!我原想用API的GETCURSOR函数或DELPHI中的SCREEN.CURSOR来获取
光标的句柄,再画出来,但这只能得到本程序窗口的光标。百思不得
其解,希望各位高手能指点迷津。先谢了!
 
你可以用findwindow取得其他窗口的handle
 
这是以前的贴子:
这样抓取当前鼠标形状:

先定义一个cursor变量:
var GlobalCur:TIcon;
windowhld:hwnd;
threadld:dword;
begin
windowhld:=GetForegroundWindow;
threadld:=GetWindowThreadProcessId(Windowhld,nil);
AttachThreadInput(GetCurrentThreadId,threadld,true);
GlobalCur:=TIcon.Create;
GlobalCur.handle:=GetCursor;
AttachThreadInput(GetCurrentThreadId,threadld,false);
然后
bitmap.canvas.brush.Style:=bsclear;
bitmap.canvas.draw(x,y,GlobalCur); //x,y的值可以通过GetCursorPos得到

 
谢谢!谢谢了!这个困扰了我无数夜晚的问题,终于可以好好的睡上一觉。
 
后退
顶部