Winform宽度和高度值不正确

时间:2016-11-24 22:28:36

标签: c# winforms

我在表单大小中遇到不正确的行为,我手动设置宽度和高度的值,但生成的表单小于预期。

我做了一个简单的表格来说明我的问题,表格在IDE中设置为400x400。

在表单上有三个带有文本更改的标签,用鼠标移动它们的代码如下:

private void Form1_MouseMove(object sender, MouseEventArgs e)
    {
        label1.Text = "this.Width = " + this.Width.ToString();
        label2.Text = "this.Height = " + this.Height.ToString();
        label3.Text = "Mouse X coordinate = " + e.X.ToString() + "\nMouse Y coordinate = " + e.Y.ToString();
    }

这就是我得到的:

宽度

The width

高度

The height

有什么想法吗?

1 个答案:

答案 0 :(得分:-1)

Windows窗体大小为400x400,但不包括标题栏和边框的活动区域不同,鼠标指针根据活动区域获取坐标。您可以按this.ClientSize.Widththis.ClientSize.Height获取有效区域大小。

将客户区设置为400x400(根据它更改表单大小),它将显示正确的结果。