第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使一個無邊界的形式可以移動?

使一個無邊界的形式可以移動?

C#
慕斯王 2019-07-13 09:31:10
當鼠標按下窗體時,是否有一種方法使窗體沒有邊框(FormBorderStyle設置為“None”),就像有邊框一樣?
查看完整描述

3 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

讓我們不要讓事情變得比他們所需要的更困難。我遇到了這么多代碼片段,它們允許您拖動窗體(或其他控件)。他們中的許多人都有自己的缺點/副作用。尤其是那些讓Windows認為窗體上的控件就是實際窗體的情況下。

話雖如此,這是我的片段。我一直在用它。我還想指出的是,您不應該像其他人一樣使用它,因為它會導致表單在某些情況下閃爍。在某些情況下也是如此。使用此更新,我沒有任何閃爍的問題:

private bool mouseDown;private Point lastLocation;

    private void Form1_MouseDown(object sender, MouseEventArgs e)
    {
        mouseDown = true;
        lastLocation = e.Location;
    }

    private void Form1_MouseMove(object sender, MouseEventArgs e)
    {
        if(mouseDown)
        {
            this.Location = new Point(
                (this.Location.X - lastLocation.X) + e.X, (this.Location.Y - lastLocation.Y) + e.Y);

            this.Update();
        }
    }

    private void Form1_MouseUp(object sender, MouseEventArgs e)
    {
        mouseDown = false;
    }


查看完整回答
反對 回復 2019-07-13
?
瀟瀟雨雨

TA貢獻1833條經驗 獲得超4個贊

另一種更簡單的方法來做同樣的事情。

public partial class Form1 : Form{
    public Form1()
    {
        InitializeComponent();
        // set this.FormBorderStyle to None here if needed
        // if set to none, make sure you have a way to close the form!
    }
    protected override void WndProc(ref Message m)
    {
        base.WndProc(ref m);
        if (m.Msg == WM_NCHITTEST)
            m.Result = (IntPtr)(HT_CAPTION);
    }

    private const int WM_NCHITTEST = 0x84;
    private const int HT_CLIENT = 0x1;
    private const int HT_CAPTION = 0x2;}


查看完整回答
反對 回復 2019-07-13
  • 3 回答
  • 0 關注
  • 359 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號