游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3161|回复: 5

真心求教 VB中如何获得CapsLock的状态

[复制链接]

3

主题

20

帖子

26

积分

注册会员

Rank: 2

积分
26
发表于 2004-12-9 09:08:00 | 显示全部楼层 |阅读模式
诚心求知道的朋友 回复一下 谢谢!!! [em19]

19

主题

116

帖子

122

积分

注册会员

Rank: 2

积分
122
QQ
发表于 2004-12-10 09:14:00 | 显示全部楼层

Re: 真心求教 VB中如何获得CapsLock的状态

加个StatusBar控件就可实现,我使用这种方法,因为程序中正好用上StatusBar,不知是否有其它的方法。

3

主题

20

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2004-12-10 22:24:00 | 显示全部楼层

Re:真心求教 VB中如何获得CapsLock的状态

    可以使用GetKeyboardState获得所有按键的状态,参考:
    Private Declare Function GetKeyboardState Lib "user32" _
     (pbKeyState As Byte) As Long
     
     
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
     Dim keys(0 To 255) As Byte
     GetKeyboardState keys(0)
     
     If keys(vbKeyA) >= 128 And keys(vbKeyRight) >= 128 Then
     Print "OK"
     End If
    End Sub

3

主题

20

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2004-12-10 22:30:00 | 显示全部楼层

Re:真心求教 VB中如何获得CapsLock的状态

liuhan :请问StatusBar控件是怎么实现CapsLock的状态的 请指点一下
我找搜索了一下网上的资料还是找不到 能不能给出关键代码 谢谢

19

主题

116

帖子

122

积分

注册会员

Rank: 2

积分
122
QQ
发表于 2004-12-11 18:22:00 | 显示全部楼层

Re: 真心求教 VB中如何获得CapsLock的状态

窗体内加上StatusBar及Command粘贴以下代码试运行:

Private Sub Command1_Click()
    If StatusBar1.Panels(2).Enabled = True Then MsgBox "Caps Lock"
End Sub

Private Sub Form_Load()
    StatusBar1.Panels.Add , , , 1
End Sub

3

主题

20

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2004-12-11 20:25:00 | 显示全部楼层

Re:真心求教 VB中如何获得CapsLock的状态

强!!太感谢了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-23 16:33

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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