将子窗体带到面板控件的MDI前面
问题描述:
我需要在MDI窗体上应用DoubleClick事件,为此,我在MDI窗体上放置了Panel1控件并将其停靠栏填充为填充。
但是,当我打电话给任何子窗体,它在Panel1后面运行。
我想这个代码MDI形式的许多事件和子窗体:将子窗体带到面板控件的MDI前面
childForm.TopMost = true
childForm.BringToFront = true
,但它不工作!
答
您需要添加对PowerPack DLL的引用,并使用Shape来代替。下面是一个例子
Imports Microsoft.VisualBasic.PowerPacks
Public Class MDIParent1
Dim C As New ShapeContainer
Dim WithEvents R As New RectangleShape
Private Sub MDIParent1_Load(sender As Object, e As EventArgs) Handles Me.Load
C.Parent = Me
R.Parent = C
R.Top = 0
R.Left = 0
Me.Controls.Add(C)
End Sub
Private Sub MDIParent1_Resize(sender As Object, e As EventArgs) Handles Me.Resize
R.Height = Me.Height
R.Width = Me.Width
End Sub
Private Sub R_DoubleClick(sender As Object, e As EventArgs) Handles R.DoubleClick
MessageBox.Show("Shape Double-click")
End Sub
...
End Class
任何你双击是不是对孩子形成你应该看到该消息。
你为什么要在MDI表单中填充面板?你拿走了儿童表格的所有空间。 – LarsTech