c#,如何在指定位置show出我的子窗体?

来源:百度知道 编辑:UC知道 时间:2024/06/19 03:16:40
新建的一个form,但是他的startPosition能够制定的位置太有限,不能满足 我的需求。比如我是点击的一个按钮显示的这个窗体,我希望这个窗体显示在我的这个按钮的正下方,这个位置我该怎么去设定呢?

'在子窗体里添加代码:
Private Sub Form_Load()

'在MDI窗体的正中
Me.Top = (MDIForm1.ScaleHeight - Me.Height) / 2
Me.Left = (MDIForm1.ScaleWidth - Me.Width) / 2

'左上角
'Me.Top = 0
'Me.Left = 0

按钮的正下方的坐标为:
Point lctn = new Point();
lctn.X=btn.left;
lctn.Y=btn.Top+btn.Height;

正下方吗,这么写就行了

private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
Point startPoint = PointToScreen(button1.Location);
startPoint.Y += button1.Height;
f2.StartPosition = FormStartPosition.Manual;
f2.Location = startPoint;
f2.Show();
}