我的表单上有10个面板,当你将它们悬停时,它们的颜色会发生变化。我有10个私人潜水员......
Private Sub pnl2_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles pnl2.MouseHover
pnl2.BackColor = Color.WhiteSmoke
End Sub
对于每个面板重复此代码,唯一的区别在于它的名称,我该如何更有效地执行此操作?因为它非常重复。
答案 0 :(得分:2)
在处理程序语句中添加它们,每个语句附加一个逗号。 sender
对象是有问题的面板,因此将其强制转换以更改其属性。
Private Sub pnl2_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles pnl2.MouseHover, pnl3.MouseHover 'etc
Dim pnl As Panel = CType(sender, Panel)
pnl.BackColor = Color.WhiteSmoke
End Sub