设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2401|回复: 5
打印 上一主题 下一主题

[模块/函数] 请教,如何用代码自定义组合式的快捷键,有奖哦

[复制链接]
跳转到指定楼层
1#
发表于 2008-11-8 11:29:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,比如我想定义"Alt+1"组合键执行窗体数据保存?

作为感谢,给出正解者将给于加分[:14]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-11-8 12:46:18 | 只看该作者
这个比较麻烦,因为窗体控件在获得焦点时,按键事件是优先于窗体的,除非你将每个能够接受焦点的键按下事件设为一样。

这个是窗体的键按下代码,检测ALT+1的:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    If Shift = 4 And KeyCode = 49 Then
        MsgBox "您按下了Alt+1"
    End If
End Sub

不过你可以这样做,建一个按钮,将事件写在按钮的单击事件中,将按钮的标签文字设为类似"保存(&1)",这样按Alt+1就会自动激发按钮的单击事件。但是前提是这个按钮的enable为true且Visible=true

点击这里给我发消息

3#
发表于 2008-11-8 15:17:37 | 只看该作者
如果是通用所有窗体,则用全局快捷键  使用Autokeys
如果是单个窗体, 使用zyp的方法
4#
 楼主| 发表于 2008-11-9 17:00:16 | 只看该作者
tmtony 先生可以详细介绍一下AutoKeys吗?
5#
发表于 2008-11-9 17:28:14 | 只看该作者
原帖由 fannky 于 2008-11-9 17:00 发表
tmtony 先生可以详细介绍一下AutoKeys吗?


我代站长回复了:

就是新建一个宏,并保存名为“AutoKeys",一定要是这个名,不能是其它名的。

在宏名的写法如下:

{F5}    单独按下F5键
^{A}     按下Ctrl+A
^+{2}   按下Ctrl+Shift+2

不过好像没Alt的组合键
6#
 楼主| 发表于 2008-11-10 08:16:02 | 只看该作者
这样啊,真好

现在看到了有AutoExec、AutoKeys这两个特殊的宏,勾起了好奇心!还有没有其它类似这两个的特殊命名的宏?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-11 00:18 , Processed in 0.106671 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表