VB如何创建主窗体的子窗体

2024-11-15 18:21:24
推荐回答(3个)
回答(1):

vb6建立主窗体的子窗体有两种方法:
第一种方法是建立一个MDI窗体,然后把普通的form窗体设置成它的子窗体。
第二种方法是使用Windows API设置一个普通form窗体为另外一普通窗体的子窗体。

一、先来看看如何建立MDI窗体的子窗体:
1、启动vb6,新建一个标准EXE工程。
2、在“工程”菜单里选择“添加MDI窗体”,
点击“打开”,添加了一个MDIForm1窗体,
这步也可以工程窗口的窗体图标上右键完成。
3、在“工程”菜单里选择“XXX 属性”,
在弹出的窗口里把启动对象设成MDIForm1。
4、在form1的属性窗口里,把MDIChild属性设置为True。
5、在Private Sub MDIForm_Load()过程里添加form1.show。
6、运行程序,看到设置已经成功。

二、使用Windows API建立子窗体:
1、1、启动vb6,新建一个标准EXE工程。
2、在“工程”菜单里选择“添加窗体”,
点击“打开”,添加了一个form2窗体,
这步也可以工程窗口的窗体图标上右键完成。
3、双击form1窗体,在通用里加入以下windows API:
Private Declare Function SetParent Lib "user32.dll" ( _
ByVal hWndChild As Long, _
ByVal hWndNewParent As Long) As Long

4、在form1的Private Sub Form_Load()过程里加入
Form2.Show
SetParent Form2.hWnd, Form1.hWnd
Form2.Move 0, 0
5、运行程序,可以看form2已经是form1的子窗体了。
6、完整程序代码如下:
Option Explicit
Private Declare Function SetParent Lib "user32.dll" ( _
ByVal hWndChild As Long, _
ByVal hWndNewParent As Long) As Long

Private Sub Form_Load()
Form2.Show
SetParent Form2.hWnd, Form1.hWnd
Form2.Move 0, 0

End Sub

回答(2):

先创建一个mdiform1再添加窗体form1。吧form1的mdichild属性设为ture

回答(3):

在属性里找MDICHILD 调整属性值