首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

一个COMBO控件数组,有5个同名控件,索引号依次为1-5,怎么用程序判断,当前光标在哪个COMBO上

2013-06-25 
一个COMBO控件数组,有5个同名控件,索引号依次为1-5,如何用程序判断,当前光标在哪个COMBO上?一个COMBO控件

一个COMBO控件数组,有5个同名控件,索引号依次为1-5,如何用程序判断,当前光标在哪个COMBO上?
一个COMBO控件数组,有5个同名控件,索引号依次为1-5,如何用程序判断,当前光标在哪个COMBO上?
[解决办法]
可以根据COMBO控件数组的索引号,设置一全局变量com_select,在COMBO控件GotFocus事件中加语句:com_select=index,然后在程序中根据com_select的值知道光标在那个COMBO上。
[解决办法]
本帖最后由 bcrun 于 2013-06-13 16:34:49 编辑 使用-1表示焦点不在combo控件上

Dim cIndex As Long

Private Sub Combo1_GotFocus(Index As Integer)
    cIndex = Index
End Sub

Private Sub Combo1_LostFocus(Index As Integer)
    cIndex = -1
End Sub

测试,你不能使用按键,因为按键按下,焦点就跑到按键上了
Private Sub Timer1_Timer()
    Text1 = cIndex
End Sub



真不知道LZ这么做有什么用处,呵呵
[解决办法]
直接用 Me.ActiveControl.Index 获取。

可以如下测试:窗体上放 5 个成员的 Combo1 控件数组,一个 Label,一个 Timer (Enabled = True, Interval = 200)。


Private Sub Timer1_Timer()
    If Me.ActiveControl.Name = "Combo1" Then Label1 = Me.ActiveControl.Index
End Sub

当运行时,在窗体上单击任何一个 Combo1 成员,可看到 Label1 的变化。

热点排行