• 4395阅读
  • 0回复

在C++ Builder中实现磁性窗体 [复制链接]

上一主题 下一主题
离线XChinux
 

只看楼主 倒序阅读 楼主  发表于: 2005-07-30
主要在窗体的WM_MOVE事件中处理

主要在窗体的WM_MOVE事件中处理
每个窗体单独处理
class TFormNow:public TForm
{
...
private:
  void __fastcall WMFormMove(TMessage Msg);
public:
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(WM_MOVE,TMessage,WMFormMove)
END_MESSAGE_MAP(TForm)
}

void __fastcall TFormNow::WMFormMove(TMessge Msg)
{
if(abs(FormMain->Top+FormMain->Height-FormNow->Top)<20)
{
  bCanTogather=true;
  FormNow->Top=FormMain->Top+FormMain->Height;
  FormNow->Left =FormMain->Left ;
  FormNow->Width =FormMain->Width;
}
else
{
  bCanTogather=false;
}
}
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个