zoukankan      html  css  js  c++  java
  • Winform自定义无边框窗体

    目的:

    1、将窗体设置成无边框,如下面效果图

    2、该无边框窗体添加了窗体放大、缩小(可以根据需要只能横向放大缩小  或者  竖向放大缩小)的功能

      

    Point vPoint = new Point((int)m.LParam & 0xFFFF, (int)m.LParam >> 16 & 0xFFFF);
    vPoint = PointToClient(vPoint);
    if (vPoint.X <= 5)
    {
      if (vPoint.Y <= 5)
      {
        m.Result = (IntPtr)GuyingHtTopLeft;
      }
      else
      {
        m.Result = vPoint.Y >= ClientSize.Height - 5 ? (IntPtr)GuyingHtBottomLeft : (IntPtr)GuyingHtLeft;
      }
    }
    else if (vPoint.X >= ClientSize.Width - 5) {   if (vPoint.Y <= 5)   {     m.Result = (IntPtr)GuyingHtTopRight;   }   else   {     m.Result = vPoint.Y >= ClientSize.Height - 5 ? (IntPtr)GuyingHtBottomRight : (IntPtr)GuyingHtRight;   } } else if (vPoint.Y <= 5)
    {   m.Result = (IntPtr)GuyingHtTop; } else if (vPoint.Y >= ClientSize.Height - 5) {   m.Result = (IntPtr)GuyingHtBottom; }

      

    3、添加鼠标左键点击

    case 0x0201: //鼠标左键按下的消息 
    if ( /*this.*/Draggable)
    {
        m.Msg = 0x00A1; //更改消息为非客户区按下鼠标 
        m.LParam = IntPtr.Zero; //默认值 
        m.WParam = new IntPtr(2); //鼠标放在标题栏内 
    }
    base.WndProc(ref m);
    break;
    

      

    效果图

    源码下载地址:

    https://download.csdn.net/download/u011392711/11109822

  • 相关阅读:
    Netty简单聊天室
    JDK环境变量配置
    EasyUI Tabs
    NIO(五)
    NIO(四)
    银行对公业务和对私业务
    mysql常用操作
    LInux安装MySQL5.7.24详情
    Python3 SMTP发送邮件
    linux下sendmail邮件系统安装详情
  • 原文地址:https://www.cnblogs.com/qtiger/p/10696813.html
Copyright © 2011-2022 走看看