Foxtable(狐表)用户栏目专家坐堂 → 求打开关闭小键盘的命令(数字键、大写键)


  共有4755人关注过本帖树形打印复制链接

主题:求打开关闭小键盘的命令(数字键、大写键)

帅哥哟,离线,有人找我吗?
9EQ98
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:521 积分:4784 威望:0 精华:0 注册:2014/1/16 16:55:00
求打开关闭小键盘的命令(数字键、大写键)  发帖心情 Post By:2014/7/7 17:00:00 [只看该作者]

如果控制打开和关闭小键盘(数字键、大写键)
[此贴子已经被作者于2014-7-26 14:22:19编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/7/7 17:02:00 [只看该作者]

参考图片点击可在新窗口打开查看http://www.dotblogs.com.tw/PowerHammer/archive/2008/03/24/2156.aspx 

 回到顶部
帅哥哟,离线,有人找我吗?
9EQ98
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:521 积分:4784 威望:0 精华:0 注册:2014/1/16 16:55:00
  发帖心情 Post By:2014/7/15 15:03:00 [只看该作者]

能提供一下FoxTable的代码吗?非常感谢!


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/7/15 15:07:00 [只看该作者]

里面就是狐表代码,通用. 前面放到全局代码就好.参考着做.

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/7/15 15:11:00 [只看该作者]

 全局代码

 

Public Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Integer, ByVal dwExtraInfo As Integer)
Public Declare Function MapVirtualKey Lib "user32" Alias "MapVirtualKeyA" (ByVal wCode As Integer, ByVal wMapType As Integer) As Integer

Public Const VK_NUMLOCK = &H90 ' Num Lock

Public Const KEYEVENTF_KEYDOWN = &H0 ' KeyDown

Public Const KEYEVENTF_KEYUP = &H2 ' KeyUp

 

 触发代码

 

Dim intScanCode As Integer = MapVirtualKey(VK_NUMLOCK, 0)

keybd_event(VK_NUMLOCK, intScanCode, KEYEVENTF_KEYDOWN, 0) ' 按下

keybd_event(VK_NUMLOCK, intScanCode, KEYEVENTF_KEYUP, 0) ' 放

[此贴子已经被作者于2014-7-15 15:12:13编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
9EQ98
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:521 积分:4784 威望:0 精华:0 注册:2014/1/16 16:55:00
  发帖心情 Post By:2014/7/26 8:38:00 [只看该作者]

请问怎样识别当前的数字键盘 是打开的还是关闭的呢?


 回到顶部
帅哥哟,离线,有人找我吗?
9EQ98
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:521 积分:4784 威望:0 精华:0 注册:2014/1/16 16:55:00
  发帖心情 Post By:2014/7/26 13:56:00 [只看该作者]

If My.Computer.Keyboard.NumLock Then
    output.show("[Num Lock] ON")
Else
    output.show("[Num Lock] OFF")
End If

 回到顶部
帅哥哟,离线,有人找我吗?
9EQ98
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:521 积分:4784 威望:0 精华:0 注册:2014/1/16 16:55:00
  发帖心情 Post By:2014/7/26 14:21:00 [只看该作者]

' 全局代码
Public Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Integer, ByVal dwExtraInfo As Integer)
Public Declare Function MapVirtualKey Lib "user32" Alias "MapVirtualKeyA" (ByVal wCode As Integer, ByVal wMapType As Integer) As Integer

Public Const VK_CAPITAL = &H14 ' Caps Lock键代码
Public Const VK_NUMLOCK = &H90 ' Num Lock键代码
Public Const VK_SCROLL  = &H91 ' Scroll Lock键代码
Public Const KEYEVENTF_KEYDOWN = &H0 ' KeyDown
Public Const KEYEVENTF_KEYUP = &H2 ' KeyUp

' 命令窗口

Dim intScanCode_NUMLOCK As Integer = MapVirtualKey(VK_NUMLOCK, 0)
keybd_event(VK_NUMLOCK, intScanCode_NUMLOCK, KEYEVENTF_KEYDOWN, 0) ' 按下
keybd_event(VK_NUMLOCK, intScanCode_NUMLOCK, KEYEVENTF_KEYUP, 0) ' 放

' 返回当前数字键(NumLock)状态
If My.Computer.Keyboard.NumLock Then  '返回按键枚举
    output.show("[Num Lock] ON")
Else
    output.show("[Num Lock] OFF")
End If


Dim intScanCode_CAPITAL As Integer = MapVirtualKey(VK_CAPITAL, 0)
keybd_event(VK_CAPITAL, intScanCode_CAPITAL, KEYEVENTF_KEYDOWN, 0) ' 按下
keybd_event(VK_CAPITAL, intScanCode_CAPITAL, KEYEVENTF_KEYUP, 0) ' 放
' 返回当前大写键(CapsLock)状态
If My.Computer.Keyboard.CapsLock Then  '返回按键枚举
    output.show("[Caps Lock] ON")
Else
    output.show("[Caps Lock] OFF")
End If


 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/7/26 18:11:00 [只看该作者]

举一反三,不错。

 回到顶部