- A+
所属分类:vb.net
在主窗口打开是时候想要子窗口显示在主窗口是中间,而且拖动窗口,拉动大小,打开在子窗口始终在主窗口的中间位置,首选需要知道我的在窗口位置坐标是如何计算的,原点(0,0)是在屏幕的左上角开始计算的。计算方法,如图:
图中点1是屏幕原点,点2是主窗口,点3是子窗口,只是算出两边是间隙除以2就得到单边,加上主窗口原点,不就是子窗口原点了吗?图中只有算出AB 距离即可
1、求出主窗口的开始原点(也就是窗口最左上角那个点)
2、求出主窗口的大小,( 长、宽 )
3、求出子窗口的大小,( 长、宽 )
上面的条件就可以计算出子窗口的原点,,得出子窗口的原点,直接在子窗口 Form3_Load事件里面赋值原点就可以了
计算例子:
Me.Left = (Form1.Width - Me.Width) / 2 + Form1.Left
Me.Top = (Form1.Height - Me.Height) / 2 + Form1.Top
' 如果窗口大小不确定怕出现负数,请使用觉对值,
'Me.Left = System.Math.Abs(Form1.Width - Me.Width) / 2 + Form1.Left
复制
请把代码加到需显示的窗口的Form3_Load启动事件里面。