现有两个窗体,一个主窗体(较大),若干个小的窗体(每个窗体的内容不一样的),现在,想在主窗体通过某个单击事件,在主窗体的指定的区域内显示出若干个小窗体(每次只显示一个窗体).如何做?

解决方案 »

  1.   

    可在文件 TABCTL32.OCX 中找到 SSTab 控件。为在应用程序中使用 SSTab 控件,必须将该控件的 .OCX 文件添加到工程中。
      

  2.   

    谢谢您的回答,但,您能用SSTAB控件加载一个窗体进去么?好像我只知道用SSTAB只能做为容器装载控件而以.
      

  3.   

    Declare Function SetParent Lib "user32.dll" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
      

  4.   

    Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
    '窗体中放置两个PictureBox,另新增窗体Form2,Form3,在Form1中加入下面代码
    Private Sub Form_Load()
    SetParent Form2.hWnd, Picture1.hWnd
    Form2.ShowSetParent Form3.hWnd, Picture2.hWnd
    Form3.ShowSetParent Form4.hWnd, Picture3.hWnd
    Form4.Show
    End Sub这是把form放在PICTURE里的例子,楼主可以参考一下~~
    放在容器里也没什么关系!
    可以把容器的大小做的比主form的大小还大点!!这样不影响效果
      

  5.   

    Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
    '窗体中放置两个PictureBox,另新增窗体Form2,Form3,在Form1中加入下面代码
    Private Sub Form_Load()
    SetParent Form2.hWnd, Picture1.hWnd
    Form2.ShowSetParent Form3.hWnd, Picture2.hWnd
    Form3.ShowSetParent Form4.hWnd, Picture3.hWnd
    Form4.Show
    End Sub
    也可以直接放在form中
      

  6.   

    用SetParent ,相对位置可以自己调整,可以设子窗体的top,left
    如果要设置父窗体的位置和大小要用setWindowPos,(如果两个窗体都是你自己写的,那是very easyb了)
      

  7.   


    你新建一个MDI窗体,然后将别的窗体设置为该窗体的子窗体就可以了(属性中有MDIChild,将其设为TRUE)