delphi 无边框用鼠标改变窗体大小

delphi 无边框用鼠标改变窗体大小
  1. //先声明
  2. procedure WMNCHITTEST(var Msg : TWMNCHITTEST); message WM_NCHITTEST;
  3. //无边框用鼠标改变窗体大小
  4. procedure TForm1.WMNCHITTEST(var Msg: TWMNCHITTEST);
  5. const
  6.   cOffset=10;
  7. var
  8.   vPoint: TPoint;
  9. begin
  10.   inherited;
  11.   vPoint:= ScreenToClient(Point(Msg.XPos, Msg.YPos));
  12.   if PtInRect(Rect(00, cOffset, cOffset),vPoint) then
  13.     Msg.Result := HTTOPLEFT
  14.   else if PtInRect(Rect(Width - cOffset, Height - cOffset, Width, Height), vPoint) then
  15.     Msg.Result := HTBOTTOMRIGHT
  16.   else if PtInRect(Rect(Width - cOffset, 0, Width, cOffset), vPoint) then
  17.     Msg.Result := HTTOPRIGHT
  18.   else if PtInRect(Rect(0, Height - cOffset, cOffset, Height), vPoint) then
  19.     Msg.Result := HTBOTTOMLEFT
  20.   else if PtInRect(Rect(cOffset, 0, Width - cOffset, cOffset), vPoint) then
  21.     Msg.Result := HTTOP
  22.   else if PtInRect(Rect(0, cOffset, cOffset, Height - cOffset), vPoint) then
  23.     Msg.Result := HTLEFT
  24.   else if PtInRect(Rect(Width - cOffset, cOffset, Width, Height - cOffset), vPoint) then
  25.     Msg.Result := HTRIGHT
  26.   else if PtInRect(Rect(cOffset, Height - cOffset, Width - cOffset, Height), vPoint) then
  27.     Msg.Result := HTBOTTOM;
  28. end;
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值