1.鼠标在客户区拖动窗口
重载消息函数 procedure WMNCHitTest(var Message: TWMNCHitTest); message WM_NCHITTEST;
procedure TForm1.WMNCHitTest(var Message: TWMNCHitTest);
begin
inherited; //不可缺少
if (=Message.Result = HTCLIENT) then
Message.Result := HTCAPTION;
end;
2.鼠标在 Panel 上拖动窗口
在 Panel 的 OnMouseMove 事件中写入下代码:
procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
SendMessage(Self.Handle, WM_SYSCOMMAND, SC_MOVE + 1, 0);
end;
相关文章
- 11-18关闭“编辑窗体”后, 主窗体的DatagridView刷新数据的问题
- 11-18关于 WebBrowser调用百度地图API 鼠标滚轮缩放地图级别失灵的解决办法
- 11-18Swift中不同窗体的切换和传递数据(segue的用法)
- 11-18JS鼠标吸粉特效
- 11-18窗口拖动
- 11-18模拟鼠标移动
- 11-18cesium的鼠标事件(最基础的显示鼠标位置坐标)
- 11-18WinForm窗体常用属性
- 11-18winform 隐藏主窗体
- 11-18关于winform项目无法创建新窗体的问题