一、设窗体上有若干个以 Command1 命名的命令按钮,现要求:点击其中一个按钮后,该按钮不可用,而其它的按钮均可用。以下几行代码可以实现这个要求,比一个一个的设置高效得多。其实,我也是看了土人的关于控件数组的一文后,认为我的方法更加简单,代码更简易。
以下是实现的代码:
Private Sub Command1_Click(Index As Integer)
Static a As Integer
If a <> 0 Then Command1(a - 1).Enabled = True '用于恢复按钮可用
Command1(Index).Enabled = False
a = Index + 1
End Sub
注:变量a主要是用来存储上一次单击的按钮Index,至于a-1和a+1是为了避免当单击index为0时的按钮时,会出现问题,所以用此法避开了。
二、当用自制一个菜单时,可用如下办法实现移到哪项时,则哪项背景色就与其它的项目的背景色不同。就是说和真的菜单一样,当移到哪一项时,则那一项的背景色就会以蓝色背景显示。
以下是实现的代码:
Private Sub Form_Load()
Dim abc as Integer
for a = 0 to Label1.Count - 1
Labe11(a).BackStyle = 0
next
End Sub
Private Sub Label1_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
Static a As Integer
'实现蓝底的背景
Label1(Index).BackStyle = 1
Label1(index).BackColor = rgb(0,0,255)
'用于实现上一项背景透明
If a >= 0 And a <> Index Then
Label1(a).BackStyle = 0
EndIf
a = Index
End Sub
注:以上是以LabeblBox控件为菜单项,菜单项多少不限。
以上实例在Win98,VB6.0运行通过。最后,希望大家能够把数组运用的得心应手。
- 还没有人评论,欢迎说说您的想法!