类型:转载 责任编辑:asp.net 日期:2007/05/23
热门软件下载:
我想让一个用vc做的程序启动后出现在固定的位置并且无法移动,而且处于所有程序的前端,不结束该程序的话无论用鼠标还是键盘都无法切换到其他程序。谢谢大家帮帮我,或者提供思路,有源代码那就更好了,嘻嘻嘻。
网友回答:
响应窗口的WM_SIZE和WM_MOVE消息,然后用MoveWindow把窗口重新移动到原来的位置。
去掉标题栏
CWnd::SetForegroundWindow
SetWindowPos (&wndMost, 0, 0, 0, 0, SWP_NOSIZE|SWP_NOMOVE);
去掉标题栏就无法移动了
响应键盘鼠标的消息,让它们固定在你的程序的矩形内就可以了
SetWindowPos设置HWND_TOPMOST属性
把它做成桌面的背景!
谢谢大家的帮助。那么不结束该程序的话无论用鼠标还是键盘都无法切换到其他程序怎么实现呢??
把程序优先级提升到最高!
鼠标不切换的话,可以用SetCapture。
键盘不切换的话,自己下钩子。
有标题栏又不能拖动的话,对HitTest返回值永远不是CAPTION就可以了