這不就是MDI嗎?把主窗口的IsMdiContainer屬性設置為True,然后在加載子窗口的時候加上一句:子窗口.MdiParent=主窗口然后再Show就行了.示例:PrivateSubb1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)Handlesb1.ClickDimfrmAsNewForm2frm.MdiParent=Mefrm.Show()EndSub
為博湖等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及博湖網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為成都做網(wǎng)站、網(wǎng)站設計、博湖網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
你的情況應該是窗體中嵌入子窗體吧:
主窗體.IsMdiContainer = True
Dim 子窗體 As New Form
子窗體.TopMost=False
子窗體.Show()
子窗體.MdiParent = 主窗體
如果不是嵌入窗體captain2005的回答應該沒問題,或者你在被覆蓋的窗體上:
子窗體.TopMost = True ‘將子窗體設為頂層顯示
'代碼中Button控件自行在窗體中添加并改名
***********************************父窗體代碼:
Public Class Form1
Public Sub From1_保存Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles From1_保存Button.Click
Select Case sender.name
Case "From1_保存Button"
MsgBox("提交的窗體是From1")
Case "Form2_提交Button"
MsgBox("提交的窗體是From2")
End Select
Form2.Close()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_顯示子窗體.Click
Form2.ShowDialog()
End Sub
End Class
***********************************子窗體代碼:
Public Class Form2
Private Sub Form2_提交Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Form2_提交Button.Click
Form1.From1_保存Button_Click(Form2_提交Button, New System.EventArgs)
End Sub
End Class
***********************************
方法滿多的,起碼三四種,比如用一個全局變量保存當前提交窗體名,執(zhí)行操作的代碼讀取這個全局變量就行。最方便的應該是做過程
Public Sub DateBaseAdd(ByVal From As Form)
,然后父窗體跟子窗體都能調(diào)用這個全局過程,同時傳入窗體名稱
首先設置父窗體屬性IsMdiContainer為True,然后在父窗體打開子窗體的事件中:
ChildForm cf = new ChildForm();
cf.MdiParent = this;
cf.Show();
就可以了
直接添加一個MID父窗體或在已有窗體的屬性中找到IsMDIContainer屬性,然后設置為True,然后創(chuàng)建第二個窗體 ,需要加載子窗體的時候:
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子窗體,則創(chuàng)該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子窗體,設為激活?并退出循環(huán)
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
要確立父子窗體,那子窗體必須繼承父窗體。實例化子窗體對象調(diào)用Show()方法。
希望采納