移动窗口时怎么改变虚线框大小、位置?(100分)

  • 主题发起人 主题发起人 bigzjj
  • 开始时间 开始时间
B

bigzjj

Unregistered / Unconfirmed
GUEST, unregistred user!
有的软件,比如OICQ,用鼠标拖动窗口时,
当窗口靠近屏幕边缘时,移动的窗口或窗口虚线框会
自动变大小、位置,不知道这个功能是怎么实现的?
 
请继续或结束
 
如果是appbar类型的窗口好象是会自动改变的.
 
是用的窗体停靠吧?
 
用程序控制呗!
onmousemove时GetCurserPos得到鼠标位置
 
先捕获鼠标位置(hook, getcursorpos), 然后根据屏幕属性(screen.width, screen.height)
进行变化
 
但是那样会出现那个虚线吗?我觉得还是用AppBar可能些。
 
请结束或继续
 
在Visual Studio 6.0中有一个例子就是这样作的。
 
就是用appbar技术就行了
 
;动态调用SetWindowRgn(Handle,newrgn)行不行啊.
估计是可以的吧,就是比较麻烦而已了.
 
多人接受答案了。
 
只不过拦截了wm_move,wm_moving消息,并且改变了参数(窗口位置信息)而已。
 
后退
顶部