winform无边框,可拖动

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Common;
using HelpLibrary;
using #WMS.Program;
using #WMS.Program.BaseSetup;
using System.Runtime.InteropServices;
using #WMS.Main.Program.Order;
using #WMS.Main.Program.Dispatch;
using #WMS.Main.Program.TallyWork;
using #WMS.Main.Program.WarehouseEntry;
using Common.WinFormHelp;
using #WMS.Main.Program.Performance;
using #WMS.Main.Program.ReportBoard;

namespace #WMS.Main
{



    public partial class frmMain : Form
    {

        public frmMain()
        {
            InitializeComponent();

        }

        public override Size MaximumSize
        {
            get
            {
                return new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
            }
            set
            {
                base.MaximumSize = value;
            }
        }

        private void FormLogin_Load(object sender, EventArgs e)
        {
            picLogo.Image = CommonFunction.GetImageFromPicFile(CommonFunction.strLogoPath);

            UserControl ucl = new uclHome();
            ucl.Dock = System.Windows.Forms.DockStyle.Fill;
            panelUserControl.Controls.Add(ucl);

            labelUserName.Text = "欢迎您!" + mGlobal.Name;

            this.Height = Screen.PrimaryScreen.WorkingArea.Height;

            if (mGlobal.IsTrialVersion)
            {
                btnChangePwd.Visible = false;
                btnHelpCenter.Location = new System.Drawing.Point(116, 80);
                btnCustomerService.Location = new System.Drawing.Point(206, 80);
            }

        }

        #region 窗体按钮样式的事件


        private void btnMin_Click(object sender, EventArgs e)
        {
            this.WindowState = FormWindowState.Minimized;
        }

        private void btnMax_Click(object sender, EventArgs e)
        {
            if (this.WindowState == FormWindowState.Normal)
            {
                this.WindowState = FormWindowState.Maximized;
            }
            else if (this.WindowState == FormWindowState.Maximized)
                this.WindowState = FormWindowState.Normal;
            else
                this.WindowState = FormWindowState.Normal;

        }

        private void btnClose_Click(object sender, EventArgs e)
        {
            this.Close();
            //this.Dispose();
        }



        private void btnMin_MouseDown(object sender, MouseEventArgs e)
        {
            btnMin.BackgroundImage = global ::#WMS.ResourceLogin.mindowing;
        }

        private void btnMin_MouseEnter(object sender, EventArgs e)
        {
            btnMin.BackgroundImage = global::#WMS.ResourceLogin.minenter;
        }

        private void btnMin_MouseLeave(object sender, EventArgs e)
        {
            btnMin.BackgroundImage = global::#WMS.ResourceLogin.minnormal;
        }

        private void btnMin_MouseUp(object sender, MouseEventArgs e)
        {
            btnMin.BackgroundImage = global::#WMS.ResourceLogin.minnormal;
        }


        private void btnMax_MouseDown(object sender, MouseEventArgs e)
        {
            if (this.WindowState == FormWindowState.Normal)
                btnMax.BackgroundImage = global::#WMS.ResourceLogin.maxdowing;
            else if (this.WindowState == FormWindowState.Maximized)
                btnMax.BackgroundImage = global::#WMS.ResourceLogin.resetdowing;
        }

        private void btnMax_MouseEnter(object sender, EventArgs e)
        {
            if (this.WindowState == FormWindowState.Normal)
                btnMax.BackgroundImage = global::#WMS.ResourceLogin.maxenter;
            else if (this.WindowState == FormWindowState.Maximized)
                btnMax.BackgroundImage = global::#WMS.ResourceLogin.resetenter;
        }

        private void btnMax_MouseLeave(object sender, EventArgs e)
        {
            if (this.WindowState == FormWindowState.Normal)
                btnMax.BackgroundImage = global::#WMS.ResourceLogin.maxnormal;
            else if (this.WindowState == FormWindowState.Maximized)
                btnMax.BackgroundImage = global::#WMS.ResourceLogin.resetnormal;
        }

        private void btnMax_MouseUp(object sender, MouseEventArgs e)
        {
            if (this.WindowState == FormWindowState.Normal)
                btnMax.BackgroundImage = global::#WMS.ResourceLogin.maxnormal;
            else if (this.WindowState == FormWindowState.Maximized)
                btnMax.BackgroundImage = global::#WMS.ResourceLogin.resetnormal;
        }


        private void btnClose_MouseDown(object sender, MouseEventArgs e)
        {
            btnClose.BackgroundImage = global::#WMS.ResourceLogin.closedowing;
        }

        private void btnClose_MouseEnter(object sender, EventArgs e)
        {
            btnClose.BackgroundImage = global::#WMS.ResourceLogin.closeenter;
        }

        private void btnClose_MouseLeave(object sender, EventArgs e)
        {
            btnClose.BackgroundImage = global::#WMS.ResourceLogin.closenormal;
        }

        private void btnClose_MouseUp(object sender, MouseEventArgs e)
        {
            btnClose.BackgroundImage = global::#WMS.ResourceLogin.closenormal;
        }

        #endregion

       

        #region 拖动以及最大化最小化

        [DllImport("user32.dll")]//*********************拖动无窗体的控件  
        public static extern bool ReleaseCapture();
        [DllImport("user32.dll")]
        public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);
        public const int WM_SYSCOMMAND = 0x0112;
        public const int SC_MOVE = 0xF010;
        public const int HTCAPTION = 0x0002;

        private void panelHeadLeft_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            btnMax_Click(sender, e);
        }

        private void panelHeadMiddle_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            btnMax_Click(sender, e);
        }

        private void panelHeadRight_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            btnMax_Click(sender, e);
        }

        private void panelHeadLeft_MouseMove(object sender, MouseEventArgs e)
        {
            ReleaseCapture();
            SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);
        }

        private void panelHeadMiddle_MouseMove(object sender, MouseEventArgs e)
        {
            ReleaseCapture();
            SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);
        }

        private void panelHeadRight_MouseMove(object sender, MouseEventArgs e)
        {
            ReleaseCapture();
            SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);
        }


        #endregion

       


    }
}

 

控件或窗体的边框:

  private void panel2_Paint(object sender, PaintEventArgs e)
        {
            ControlPaint.DrawBorder(e.Graphics,
                                this.panel2.ClientRectangle,
                                Color.LightSeaGreen,//7f9db9
                                1,
                                ButtonBorderStyle.Solid,
                                Color.LightSeaGreen,
                                1,
                                ButtonBorderStyle.Solid,
                                Color.LightSeaGreen,
                                1,
                                ButtonBorderStyle.Solid,
                                Color.LightSeaGreen,
                                1,
                                ButtonBorderStyle.Solid);

        }

 

转载于:https://www.cnblogs.com/Foodaholic/p/6019961.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值