- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我使用的是 Visual Studio 2012。我的表单在打开时不在屏幕中央。我将表单的 StartPosition
设置为 CenterScreen
,但它始终从我的左显示器的左上角开始(我有 2 个显示器)。
有什么想法吗?谢谢
最佳答案
试试这个方法!
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//Method 1. center at initilization
this.StartPosition = FormStartPosition.CenterScreen;
//Method 2. The manual way
this.StartPosition = FormStartPosition.Manual;
this.Top = (Screen.PrimaryScreen.Bounds.Height - this.Height)/2;
this.Left = (Screen.PrimaryScreen.Bounds.Width - this.Width)/2;
}
}
}
在应用程序的构造函数中调用了两个虚拟成员。
即
this.Text;
this.MaximumSize;
不要在构造函数中调用虚拟成员,这可能会导致异常行为
固定代码
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.Location = new System.Drawing.Point(100, 100);
this.Name = "Form1";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
// to see if form is being centered, disable maximization
//this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
private void Form1_Load(object sender, EventArgs e)
{
this.Text = "Convertor";
this.MaximumSize = new System.Drawing.Size(620, 420);
}
}
}
关于c# - StartPosition 设置为 CenterPosition 但我的表格没有居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14293241/
子窗体的起始位置即使我这样手动编程也无法设置: f = new Home_Button_Forms.Home_Mandated_Organization(); f.TopLevel = false;
我有这一行: StartPosition = FormStartPosition.Manual; 在我的程序中,每次单击按钮时都会显示新表单。但它不好,我希望表格位置每次都在鼠标光标所在的位置。我该怎
有没有办法使用代码设置 Windows 窗体窗体的 StartPosition?似乎无论我尝试什么,都会导致 StartPostion 成为默认设置。 这是我要在表单中显示的内容: publi
我使用的是 Visual Studio 2012。我的表单在打开时不在屏幕中央。我将表单的 StartPosition 设置为 CenterScreen,但它始终从我的左显示器的左上角开始(我有 2
我需要在另一个表单的正前方显示一个表单,这让我想到了以下问题。 为什么表单的起始位置为 CenterParent 而字段 this.Parent 等于 null? 它必须知道父级才能正确定位自己,它确
我们在办公室讨论,我找不到答案。 根据我的同事 indexOf 在 JS 中总是只找到第一个匹配项,从字符串的开头开始。 但是因为有 startPosition 参数,所以这不再是真的。 所以我的问题
我是一名优秀的程序员,十分优秀!