我估计是调Api函数查找指定的窗口,然后就把自己贴上去。
解决方案 »
- SkinPack以及themeengine 控件有谁用过?
- 关于gprs的问题,请大家帮忙,在线等待
- 关于tatetimepicker
- 急问!!delphi中如何操纵MSMQ 高分!!
- 当两个MDIChild子窗体都最大化后,如何控制某个子窗体为当前窗体!
- 各位是否可以谈谈CSDN的BORLAND版的2张光盘中的内容如何呢?谢谢!
- 请问如何给别人加分?
- 新增记录后,如何取下access中该记录的自动编号.还有...
- 为什么会这样?那该怎么解决呢? (关于读写文件的问题)
- 如何用SQL的UPDATE修改数据库(带参数)
- 如何使dbgrid中的options中的dgediting中的值和为true.
- 能不能找到Delphi的QuickReport的帮助
方法很多,最简单的拦截WM_MOVE消息!
去google.com,输入"磁性窗体 DELPHI"可以找到大量资料!
拦截WM_MOVE消息即可type TForm1 = class(TForm) private procedure WMMOVE(var Msg: TMessage); message WM_MOVE; end;var Form1: TForm1;implementation{$R *.DFM}{ TForm1 }procedure TForm1.WMMOVE(var Msg: TMessage);begin Inherited; if (Left < 10) and (Top < 10) and (Left <> 0) and (Top <> 0) then // 设定移动到左上角 10 点范围内时贴到边上去 begin Left := 0; Top := 0; Msg.Result := 0; end;end;end.
记住几个事件!
OnGetSiteInfo,OnDockOver,OnDockDrop,OnUnDock!