| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1276 人关注过本帖
标题:vb中如何控制小键盘“num lock”键?????
只看楼主 加入收藏
laohei123456
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-8-14
收藏
 问题点数:0 回复次数:4 
vb中如何控制小键盘“num lock”键?????
vb程序中如何控制小键盘“num lock”键。程序开始运行时先记住“num lock”键的状态,然后自动关闭“num lock”键(让2、4、6、8键为方向键),待程序退出前再恢复“num lock”键的原来状态。
搜索更多相关主题的帖子: num lock 键盘 状态 自动 
2007-08-14 11:40
心中有剑
Rank: 2
等 级:新手上路
威 望:5
帖 子:611
专家分:0
注 册:2007-5-18
收藏
得分:0 
sendkeys不可以吗?

2007-08-14 12:07
laohei123456
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-8-14
收藏
得分:0 
谢谢!但用代码如何实现:读当前“num lock”键信息,程序退出时恢复“num lock”键值?
2007-08-14 14:05
心中有剑
Rank: 2
等 级:新手上路
威 望:5
帖 子:611
专家分:0
注 册:2007-5-18
收藏
得分:0 

Private Declare Sub keybd_event Lib "user32" _
(ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)

Private Declare Function GetKeyState Lib "user32" _
(ByVal nVirtKey As Long) As Long

Private Const KEYEVENTF_KEYUP = &H2
Private Const VK_CAPITAL = &H14
Private Const VK_NUMLOCK = &H90

Private Sub Command1_Click()
If GetKeyState(VK_CAPITAL) And &H1 Then
Else
'按下NUMLOCK 键
Call keybd_event(VK_NUMLOCK , 0, 0, 0)
Call keybd_event(VK_NUMLOCK , 0, KEYEVENTF_KEYUP, 0)
End If
End Sub

Private Sub Command2_Click()
If GetKeyState(VK_NUMLOCK ) And &H1 Then
'按下NUMLOCK 键
Call keybd_event(VK_NUMLOCK , 0, 0, 0)
Call keybd_event(VK_NUMLOCK , 0, KEYEVENTF_KEYUP, 0)
End If
End Sub


2007-08-14 15:34
laohei123456
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-8-14
收藏
得分:0 
太谢谢你了!
2007-08-14 15:56
快速回复:vb中如何控制小键盘“num lock”键?????
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030944 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved