如何给VB.NET窗体添加子窗体?

如何给VB.NET窗体添加子窗体?,第1张

直接添加一个MID父窗体或在已有窗体的属性中找到IsMDIContainer属性,然后设置为True,然后创建第二个窗体 ,需要加载子窗体的时候:

Dim NewMDIChild As New Form2

NewMDIChild.MdiParent = Me

NewMDIChild.Show()

Public Shared Sub CheckMDIChildForm(ByVal MDIForm As Windows.Forms.Form, ByVal MDIChildForm As Windows.Forms.Form, ByVal MDIChildFormName As String)

        If MDIForm.MdiChildren.Length < 1 Then

            '如果没有任何一个MDI子窗体,则创该MDI子窗体的窗体实例

            Dim MDIChildFrm As Windows.Forms.Form = MDIChildForm ' 定义MDI子窗体

            MDIChildFrm.MdiParent = MDIForm '指定父窗体

            MDIChildFrm.Show() '打开窗体

            Exit Sub

        Else

            Dim x As Integer

            Dim frmyn As Boolean

            For x = 0 To (MDIForm.MdiChildren.Length) - 1

                Dim tempChild As Windows.Forms.Form = CType(MDIForm.MdiChildren(x), Windows.Forms.Form)

                If tempChild.Name = MDIChildFormName Then

                    '检测到有该MDI子窗体,设为激活 并退出循环

                    frmyn = True

                    tempChild.BringToFront()

                    Exit For

                Else

                    frmyn = False

                End If

            Next

            If Not frmyn Then

                '在打开的窗体中没检测到则新建

                Dim MDIChildFrm As Windows.Forms.Form = MDIChildForm ' 定义MDI子窗体

                MDIChildFrm.MdiParent = MDIForm '指定父窗体

                MDIChildFrm.Show() '打开窗体

            End If

        End If

    End Sub

窗体由控制框和标题栏组成;在窗体中添加绑定型控件

1、窗体的设计视图状态时通过控件工具箱上的工具按钮插入相应的控件(文本框、组合框等等)

2、然后双击控件打开属性窗口

3、对控件进行进一步的设置

4、通过指定数据选项卡上的记录源来把该控件绑定到窗体数据。

vb6建立主窗体的子窗体有两种方法:

第一种方法是建立一个MDI窗体,然后把普通的form窗体设置成它的子窗体。

第二种方法是使用Windows API设置一个普通form窗体为另外一普通窗体的子窗体。

一、先来看看如何建立MDI窗体的子窗体:

1、启动vb6,新建一个标准EXE工程。

2、在“工程”菜单里选择“添加MDI窗体”,

点击“打开”,添加了一个MDIForm1窗体,

这步也可以工程窗口的窗体图标上右键完成。

3、在“工程”菜单里选择“XXX 属性”,

在d出的窗口里把启动对象设成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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11594155.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存