我有一个主窗体(应用程序的父窗体),使用p / Invoke SetWindowPos
设置为后面。 SetWindowPos
要求窗口的X,Y坐标位于客户坐标中。
当我启动程序时,窗口显示在屏幕中央。然后我移动窗口并将新位置保存到绑定到Properties.Settings.Default.frmMainLocation
属性的frmMain.Location
。
我停止程序然后重新启动它 - 表单又回到原来的中心位置。
如何设置SetWindowPos以在X,Y坐标处定位窗口从表格的Location.X
,Location.Y
坐标派生?
答案 0 :(得分:1)
如果您将属性保存到某个点,则可以设置窗口位置,如下所示:
Point pos = new Point
(
Properties.Settings.Default.posX,
Properties.Settings.Default.posY
);
this.Location = pos;
我在Form_Load()
事件的形式Form.Load()
方法中设置了这个,其中包含几组不同的简单坐标,它改变了每次加载时显示表单的位置。它只是跳跃,跳过和跳跃,让它加载来自Properties.Settings.Default
的坐标,正如我在示例中所示。