ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: luqiwe

[分享] 定制自己的按键精灵

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2012-10-4 22:04 | 显示全部楼层
本帖已被收录到知识树中,索引项:Windows API应用
本是路过,看到写得这么好的文章,特意顶一下。由浅入深,通俗易懂,资源完整的好文章!!

TA的精华主题

TA的得分主题

发表于 2012-10-7 08:56 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-3-30 22:10 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
不好意思,請問一些問題
Declare Function PostMessage Lib "user32" Alias"PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParamAs Long, lParam As Any) As Long
Declare Function MapVirtualKey Lib "user32" Alias"MapVirtualKeyA" (ByVal wCode As Long, ByVal wMapType As Long) AsLong

Public Const WM_KEYDOWN = &H100
Public Const WM_KEYUP = &H101
Public Const WM_CHAR = &H102
Public Const VK_A = &H41

Function MakeKeyLparam(ByVal VirtualKey As Long, ByVal flag As Long) AsLong
Dim s As String
Dim Firstbyte As String 'lparam参数的24-31位
If flag = WM_KEYDOWN Then '如果是按下键
Firstbyte = "00"
Else
Firstbyte = "C0" '如果是释放键
End If
Dim Scancode As Long
'获得键的扫描码
Scancode = MapVirtualKey(VirtualKey, 0)
Dim Secondbyte As String 'lparam参数的16-23位,即虚拟键扫描码
Secondbyte = Right("00" & Hex(Scancode), 2)
s = Firstbyte & Secondbyte & "0001" '0001为lparam参数的0-15位,即发送次数和其它扩展信息
MakeKeyLparam = Val("&H" & s)
End Function

Private Sub Form_Load()
dim hwnd as long
hwnd = XXXXXX 'XXXXX表示记事本编辑框的句柄
PostMessage hwnd,WM_KEYDOWN,VK_A,MakeKeyLparam(VK_A,WM_KEYDOWN) '按下A键
PostMessage hwnd,WM_CHAR,ASC("A"),MakeKeyLparam(VK_A,WM_KEYDOWN)'输入字符A
PostMessage hwnd,WM_keyup, vK_A,MakeKeyLparam(VK_A,WM_keyUP)'释放A键
End Sub

最後那三行 postmessage 怎麼如果用在 記事本 時,會入了三個 "a" 呢?
還有,怎樣鍵入 crtl + 某個鍵 呢?

TA的精华主题

TA的得分主题

发表于 2013-4-1 13:08 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-4-17 23:59 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
羡慕以前,学习一下!

TA的精华主题

TA的得分主题

发表于 2013-4-19 16:26 | 显示全部楼层
不是说有例子吗?怎么没有啊,只是下载了网上的一篇文章,你的重点应该是用例子教会大家如何用各种方法模拟和各种方法在使用中的注意事项及要点的呀

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-4-22 15:57 | 显示全部楼层
本帖最后由 luqiwe 于 2013-4-22 16:01 编辑

有附件的,只是我认为主题中的内容基本上涵盖了附件中的实例, 能够够理解主题内容中的代码其实就不需要附件,如果连主题中的代码都理解不了要附件也没什么用。如果确实认为我应该发附件,OK,等工作轻松些时我会附上的。(我所开发过的VBA代码曾归类做成ACCESS数据库查询,但后来因换工忘了从公司电脑拷出来,问以前的同事说电脑已经拆掉了,悲,55555~~~~~~)

TA的精华主题

TA的得分主题

发表于 2013-4-23 07:28 | 显示全部楼层
那些代码能看懂,可是要有例子,用起来就更得心就手了,因为这里的菜不少,期盼中,我前段就是专门找这个,网上的这类文章基本看了个遍,可基本都差不多,实例很少,只能看懂代码的作用,可是不知道怎样才能用好

TA的精华主题

TA的得分主题

发表于 2014-4-23 13:27 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
不错哈 谢谢分享

TA的精华主题

TA的得分主题

发表于 2014-7-1 11:53 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-18 19:43 , Processed in 0.042416 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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