亚洲mv大片欧洲mv大片入口,国产粉嫩无码一区二区三区,国内精品自产拍在线观看91,久久久亚洲欧洲日产国码二区,中文字幕人妻久久一区二区三区

常州機器視覺培訓(xùn)

常州上位機軟件開發(fā)

常州工業(yè)機器人編程設(shè)計培訓(xùn)

常州PLC培訓(xùn)

常州PLC

常州PLC編程培訓(xùn)

常州電工培訓(xùn)

常州和訊plc培訓(xùn)中心歡迎您!
當(dāng)前位置:網(wǎng)站首頁 > 新聞中心 新聞中心
Winform實現(xiàn)無邊框拖動的兩種方式-常州上位機學(xué)習(xí),常州機器視覺學(xué)習(xí),常州工業(yè)機器人學(xué)習(xí)
日期:2024-1-24 14:04:22人氣:  標(biāo)簽:常州上位機學(xué)習(xí) 常州機器視覺學(xué)習(xí) 常州工業(yè)機器人學(xué)習(xí)

Winform作為桌面應(yīng)用程序的一個代表,可以說是C#初學(xué)者快速入門最好的一種方式,然而隨著我們的開發(fā)能力的提升,我們對UI界面的要求變得越來越高,于是我們開始不斷優(yōu)化、升級我們的UI界面。


Winform無邊框設(shè)計是我們開發(fā)漂亮的UI界面非常常用的一種方式,無邊框設(shè)計意味著沒有了應(yīng)用程序的標(biāo)題欄,也就無法直接拖動,今天主要給大家介紹兩種實現(xiàn)窗體無邊框拖動的方式。


第一種方式:通過編寫代碼實現(xiàn)


        private Point mPoint;


        private void Panel_MouseDown(object sender, MouseEventArgs e)

        {

            mPoint = new Point(e.X, e.Y);

        }


        private void Panel_MouseMove(object sender, MouseEventArgs e)

        {

            if (e.Button == MouseButtons.Left)

            {

                this.Location = new Point(this.Location.X + e.X - mPoint.X, this.Location.Y + e.Y - mPoint.Y);


            }

        }

這種方式使用的是自己寫代碼實現(xiàn),將這段代碼復(fù)制到界面代碼中,然后選擇窗體中的一個控件,比如Panel或者Label,將它們的MouseDown事件綁定代碼中的MouseDown事件,MouseMove事件綁定代碼中的MouseMove事件,即可。

第二種方式:通過Windows API實現(xiàn)


        [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 TopPanel_MouseDown(object sender, MouseEventArgs e)

        {

            ReleaseCapture();

            SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);

        }

這種方式使用的是Windows底層的API函數(shù),同樣將這段代碼復(fù)制到界面代碼中,然后選擇窗體中的一個控件,比如Panel或者Label,將它們的MouseDown事件綁定代碼中的MouseDown事件,即可。

本文網(wǎng)址:
下一篇:沒有資料

相關(guān)信息:
版權(quán)所有 CopyRight 2006-2017 江蘇和訊自動化設(shè)備有限公司 常州自動化培訓(xùn)中心 電話:0519-85602926 地址:常州市新北區(qū)府琛商務(wù)廣場2號樓1409室
蘇ICP備14016686號-2 技術(shù)支持:常州山水網(wǎng)絡(luò)
本站關(guān)鍵詞:常州PLC培訓(xùn) 常州PLC編程培訓(xùn) 常州PLC編程 常州PLC培訓(xùn)班 網(wǎng)站地圖 網(wǎng)站標(biāo)簽
在線與我們?nèi)〉寐?lián)系
亚洲mv大片欧洲mv大片入口,国产粉嫩无码一区二区三区,国内精品自产拍在线观看91,久久久亚洲欧洲日产国码二区,中文字幕人妻久久一区二区三区