Vb.net调用子窗体

方法一:


  DimNewMDIChild As New Form3         ‘实例化子窗体Form3


  NewMDIChild.MdiParent = Me    ‘设置子窗体的父窗体为本窗体

       

  NewMDIChild.Show()   ‘显示子窗体


 

方法二:


   '声明SetParent函数,这是一个API函数  用来设置子窗体

  

  Declare FunctionSetParent Lib "user32" Alias "SetParent" (ByVal hWndChildAs IntPtr,


 ByVal hWndNewParent As IntPtr) As Long

 

  ‘调用函数创建子窗体

  

  SetParent(Form4.Handle,Me.Handle)


  Form4.Show()



Vb.net调用子窗体_第1张图片



  但是个人感觉第二种方法比较好用。


  因为第一种方法是通过不断实例化一个子窗体实现的,不做判断的话触发一次就会增加


一个。判断方法自便,这里找到了要少敏师姐的经验:


http://blog.csdn.net/missysm586/article/details/6311729


  而且还有一点,当子窗体边界超出父窗体时,父窗体会自动出现滚动条



Vb.net调用子窗体_第2张图片



  当移动滚动条后所有子窗体会发生移动,而父窗体控件因为有固定坐标不会发生移动。


(通过第二种方法获得的子窗体也不会动),很难受。



Vb.net调用子窗体_第3张图片


Vb.net调用子窗体_第4张图片

你可能感兴趣的:(.NET)