【问题标题】:Change the location of the window form in c#?在c#中更改窗口窗体的位置?
【发布时间】:2012-10-30 05:25:36
【问题描述】:

在窗口应用程序中,我使用 c# 创建了一个表单并将可见的错误最小化、最大化按钮和表单边框设置为无,我在表单顶部放置了一个面板,在该面板中我放置了关闭、最小化按钮。现在我如何拖动窗口窗体。请有任何参考。我的代码是

        this.ControlBox = false;
        this.MaximizeBox = false;
        this.MinimizeBox = false;
        this.FormBorderStyle = FormBorderStyle.None;

谢谢。

【问题讨论】:

  • 我不确定你在问什么。您希望能够拖动对话框,但由于某种原因不能?
  • 没有布兰登,当我看到表单边框为假时,我无法拖动表单

标签: winforms


【解决方案1】:

只需为您的Panel 注册MouseDownMouseMoveMoueUp 事件

    bool MouseDownFlag = false;
    Point start = new Point(0, 0);

    private void panel1_MouseDown(object sender, MouseEventArgs e)
    {
        start = new Point(e.X, e.Y);
        MouseDownFlag = true;
    }

    private void panel1_MouseMove(object sender, MouseEventArgs e)
    {
        if (MouseDownFlag)
        {
            Point newPoint = new Point();
            newPoint.X = this.Location.X - (start.X - e.X);
            newPoint.Y = this.Location.Y - (start.Y - e.Y);

            this.Location = newPoint;
        }
    }

    private void panel1_MouseUp(object sender, MouseEventArgs e)
    {
        MouseDownFlag = false;
    }

【讨论】:

  • 嗨,Afshin,感谢您的回复,我如何注册活动,有什么参考资料
  • 在表单的“属性”窗格的“事件”部分中,双击每个 MouseDown、MouseMove、MouseUp 事件,以便为每个事件自动生成一个方法,或者在您的表单添加代码喜欢 this.MouseDown += panel1_MouseDown; ....
猜你喜欢
  • 2011-04-09
  • 1970-01-01
  • 1970-01-01
  • 2012-11-11
  • 1970-01-01
  • 1970-01-01
  • 2018-09-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多