vb.net向前和向后移动面板

时间:2013-09-03 08:38:27

标签: vb.net panel move

我一直在努力研究如何将重叠的面板向前或向后移动,但没有成功我认为以下代码可以工作,但它没有任何明显的效果。

    Private Sub Panel2_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Panel2.Click
    Me.BringToFront()
End Sub

也试过

    Private Sub Panel3_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Panel3.Click
    Me.Activate()
End Sub

    Private Sub Panel3_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Panel3.Click
    Me.TopMost = True
End Sub

也失败了吗?

1 个答案:

答案 0 :(得分:0)

在您的实际情况中,我认为Me指的是表单。而是使用Me,尝试将代码更改为您要更改的特定面板:

Panel1.BringToFront()

如果您愿意,也可以使用事件的sender变量来选择面板:

Private Sub Panel3_click(ByVal sender As Object, ByVal e As EventArgs) _
Handles Panel1.Click, Panel2.Click, Panel3.Click
    Dim auxPanel As Panel = CType(sender, Panel)
    auxPanel.BringToFront()
End Sub

顺便说一句,重新排列控件以使它们重叠的正确方法是.BringToFront().SendToBack().TopMost.Activate有不同的用途。有关它的信息,请参阅MSDN文档以了解它们各自的功能。