窗口的拖动

FengSC 2000-06-28 05:20:00
在C++ Builder中如何实现整个窗口的拖动。
...全文
160 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxz 2000-06-29
  • 打赏
  • 举报
回复
下载上面Delphi-VCL控件大集合-Form-coolform.zip控件(带源码,可在bcb中使用)
jyg 2000-06-28
  • 打赏
  • 举报
回复
如果你用惯VC的话,也可以用下面的类似的宏:

BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_NCHITTEST,TWMNChitTest,OnNcHitTest)
END_MESSAGE_MAP(TForm)

将它加入到Form说明中,再声明OnNcHitTest,然后根据需要在定义中返回HTCAPTION即可。
「已注销」 2000-06-28
  • 打赏
  • 举报
回复
是不是关于拖动无标题的窗体,如果是的话,试看看这个吧。
在文件.h(就是该窗体的文件头)加入下面的代码:
public: // User declarations
virtual void __fastcall Dispatch(void *Message);

然后在该form的.cpp文件加入(Form名为From1):
void __fastcall TForm1::Dispatch(void *Message)
{
switch (((PMessage)Message)->Msg){
case WM_NCHITTEST:
inherited::Dispatch(Message);
if(((PMessage)Message)->Result==HTCLIENT) ((PMessage)Message)->Result=HTCAPTION;
return;
default:
break;}
inherited::Dispatch(Message);
}

就是响应WM_NCHITTEST消息,然后对其返回值是HTCLIENT(客区的)改成HTCAPTION(标题)就可以了。
FengSC 2000-06-28
  • 打赏
  • 举报
回复
在没有标题栏的时候,鼠标拖动窗体的客户区拖动窗口。
Wingsun 2000-06-28
  • 打赏
  • 举报
回复
什么意思,能详细点吗?

13,822

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧