【发布时间】:2011-06-16 19:30:30
【问题描述】:
如何在 C# 中使表单居中,使其显示在屏幕中间
【问题讨论】:
-
什么样的应用程序?基于 Web、基于 WPF 等
如何在 C# 中使表单居中,使其显示在屏幕中间
【问题讨论】:
如果您在谈论它从哪里开始,请使用Form.StartPosition:
form.StartPosition = FormStartPosition.CenterScreen;
如果您想在任意时间执行此操作,则需要计算出屏幕大小、表单大小,并在相应地设置Location 属性之前自行计算。
【讨论】:
使用窗体的 StartPosition 属性,将其更改为 CenterScreen。
【讨论】:
在 Winforms 中,有一个名为 StartPosition 的 Form 控件的属性;它是一个枚举,其中包括位置“CenterScreen”。使用它,您的窗口将在第一次创建时出现在鼠标当前所在的监视器的中间。
【讨论】:
您可以在设计器中设置StartPosition属性
【讨论】:
单击您的表单并按F4 以显示“属性”选项卡,然后向下滚动到StartPosition 属性并将值更改为CenterScreen。
【讨论】:
如果您希望它在启动时居中,请将表单的 StartPosition (http://msdn.microsoft.com/en-us/library/system.windows.forms.form.startposition.aspx) 设置为 CenterScreen。
如果您希望它在其他时间居中,您必须使用 SystemInformation.WorkingArea 类 (http://msdn.microsoft.com/en-us/library/system.windows.forms.systeminformation.workingarea.aspx) 并像这样对其执行算术:
X = (屏幕宽度 - 表单宽度) / 2
Y = (屏幕高度 - 表格高度) / 2
然后考虑如果您的表单太大会发生什么。将其中一个或两个坐标都设置为负数是不好的形式,所以不要忘记这种情况。
【讨论】: