1000分求一段代码,高手们速进。内有详细说明(300)

  • 主题发起人 主题发起人 anselace
  • 开始时间 开始时间
A

anselace

Unregistered / Unconfirmed
GUEST, unregistred user!
1、该delphi程序后端运行,前端运行画图程序。(注:此时delphi程序并未获得焦点)2、此时,画图程序是我的操作窗口,当我按下CapsLock键时,实现对画图标题栏的选中操作,此时,如果再按下方向键,他会被拖动到其他位置。3、当我松开CapsLock键时,停止对画图的拖动操作,并且画图窗口回到原来未拖动前的位置。4、随后的时间内,只要我开着画图,随时按下及松开CapsLock键都实现上面的效果。5、要求完整代码,最好带有注释。如果代码可行,最终给1000分。(系统不让一次给那么多,我会分4次给累计1000分的)如果能把源程序发到我邮箱最好了wuji_an@126.com。谢谢了啊!
 
拖动 可以用 SetWindowPos() 吗
 
不用这个,用按键模拟鼠标的mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0)思路我有:1、需要使用Hook技术开发一个全局键盘钩子,使得后台的delphi程序始终判断键盘是否按下。HHOOK SetWindowsHookEx(int idHook, // type of hook to installHOOKPROC lpfn, // address of hook procedureHINSTANCE hMod, // handle of application instanceDWORD dwThreadId // identity of thread to install hook for ); 2、用HWND FindWindow(LPCTSTR lpClassName, // pointer to class nameLPCTSTR lpWindowName // pointer to window name);找到画图窗口。3、用mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0)去模拟鼠标左键按下。谁能把全代码写出来,马上送分。
 
这个不需要使用钩子技术的,只需要使用设置windows窗体位置的api即可
 

Similar threads

后退
顶部