安徽彩票大奖 欧洲百万乐透大奖 七星彩17049规律大奖 双色球中大奖领奖过程 3d近期中大奖故事 广州番禺中福彩大奖的 鸡男注定会中大奖 2016江苏彩民中大奖 趣彩网大奖网黑平台 大乐透4.97亿大奖 霍邱一彩民6元中双色球547万大奖 双色球黑龙江中大奖图 体育彩票中大奖名单 什么样的人能中大奖 彩票大奖作假

Access实现按小键盘数字键自动选取组合框或者列表框中对应行的数据

2017-11-07 11:23:00
cg1
转贴
778

在程序中,我们有时需要利用小键盘输入数字快速选定记录

比如实现按小键盘数字键自动选取组合框或者列表框中对应行的数据


在一个组合框中,行来源是值列表为 "文盲;小学;初中;高中;大专;本科;硕士;博士",实现按小键盘的数字键1,就选择“文盲”这行,按8就选择“博士”这?#23567;?br />
详细函数:

Function SelectValue(ByRef ComboOrList As Control, ByVal KeyCode As Integer)
'本函数的作用是根据用户在组合框或者列表框上按的数字小键盘的顺序,
'选择列表前10个中的某一个
    Debug.Print KeyCode
    
    With ComboOrList
        If .ControlType <> acComboBox And .ControlType <> acListBox Then
            Debug.Print "不是组合框或者列表框,无法应用本功能"
            Exit Function
        End If
        If KeyCode >= 96 And KeyCode <= 105 Then '必须是小键盘,0键=96 --> 9键=105
            If .ListCount >= KeyCode - 96 Then
            '如果列表的数量>= 10
                .Value = .Column(.BoundColumn - 1, KeyCode - 96 - 1)
            End If
        End If
        
    End With
End Function



在窗体中放置组合框和列表框,其命名为Combo1和List1,组合框或者列表框的 KEYUP 事件中调用上面一个通用函数。

无论是行来源类型是值列表、表/查询、字段都可以应用。

Private Sub Combo1_KeyUp(KeyCode As Integer, Shift As Integer)
'调用方式如下:
    SelectValue Me.Combo1, KeyCode
End Sub
Private Sub List1_KeyUp(KeyCode As Integer, Shift As Integer)
'调用方式如下:
    SelectValue Me.List1, KeyCode
End Sub


分享
? 1999-2019 Office交流网?? 中山市天鸣科技发展有限公司 粤ICP备10043721号-5 SQL查询:19
内存占用:7.75MB
PHP 执行时间:0.14
双色球大奖2000年
安徽彩票大奖 欧洲百万乐透大奖 七星彩17049规律大奖 双色球中大奖领奖过程 3d近期中大奖故事 广州番禺中福彩大奖的 鸡男注定会中大奖 2016江苏彩民中大奖 趣彩网大奖网黑平台 大乐透4.97亿大奖 霍邱一彩民6元中双色球547万大奖 双色球黑龙江中大奖图 体育彩票中大奖名单 什么样的人能中大奖 彩票大奖作假