老师让用VB编个程序,就是键盘上输入什么字母,软件界面上显示什么字母。键盘打abcd 软件上出现abcd 30

有详细的过程,对VB还是小白... 有详细的过程,对VB还是小白 展开
 我来答
百度网友d5847c21e
2011-07-22 · 超过43用户采纳过TA的回答
知道答主
回答量:100
采纳率:0%
帮助的人:107万
展开全部
'打开VB,建一个窗体,代码写进去就可以了,结果显示在标题栏上。
'基本上能找出键盘上所有值,除了win键\Ctrl\Screen...等特殊功能键找不出来。
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 18 Then Me.Caption = "Alt"
If KeyCode = 16 Then Me.Caption = "Shift"
If KeyCode >= 112 And KeyCode <= 123 Then Me.Caption = "F" & KeyCode - 111
If KeyCode = 34 Then Me.Caption = "PageDown"
If KeyCode >= 65 And KeyCode <= 90 Then Me.Caption = Chr(KeyCode)
If KeyCode >= 48 And KeyCode <= 57 Then Me.Caption = "键盘上方:" & KeyCode - 48
If KeyCode >= 96 And KeyCode <= 105 Then Me.Caption = "数字键盘:" & KeyCode - 96
If KeyCode = 110 Then Me.Caption = "数字键盘:."
'......
'依次找出keycode对应的键位就是了。有规律的就按规律写了,
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
厍诱脸刚鞍欧鹤Bq
2011-07-30 · TA获得超过733个赞
知道小有建树答主
回答量:615
采纳率:50%
帮助的人:416万
展开全部
Private WithEvents Lable1 As TextBox
Private Sub Form_Load()
Set Lable1 = Controls.Add("VB.TextBox", "Lable1")
Lable1.Visible = True
Lable1.Top = 0
Lable1.Left = 0
Lable1.Height = Me.Height
Lable1.Width = Me.Width
Lable1.BorderStyle = 0
End Sub
Private Sub Lable1_KeyPress(KeyAscii As Integer)
If KeyAscii >= 97 And KeyAscii <= 122 Then Else KeyAscii = 0
End Sub

试试吧,直接放到窗体代码里,其他什么都不要添加,控件是代码创建的,允许输入A-Z,还有什么不会的加QQ:243991753
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
伊号科技
2011-07-21 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:337
采纳率:0%
帮助的人:133万
展开全部
判断键盘相应的位置 , 软件界面也显示相应的字母
时间就用按下响应吧
追问
还是不会,更详细些
追答
每个键都有对应的Ascii码
拷贝楼下的
Private Sub Form_KeyPress(KeyAscii As Integer)
If Chr(KeyAscii) "" Then ‘按了上档键 你可以修改成你想要的Ascii码
Print Chr(KeyAscii) ’在软件界面显示出你敲的键
End If
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
绝吹泪与辈9206
2011-07-21 · TA获得超过9.7万个赞
知道大有可为答主
回答量:3.3万
采纳率:0%
帮助的人:4405万
展开全部
最简单的一个办法。。。
放一个textbox。。。
什么代码都不用输,运行。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Rontion
2011-07-21 · 超过25用户采纳过TA的回答
知道答主
回答量:96
采纳率:0%
帮助的人:121万
展开全部
用键盘记录,
API GETKEYBOADSTATE , 百度搜下
追问
这个怎么用?
追答
'添加窗体,Timer控件,复制以下代码,看效果。。。。

Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
'用这个API 方便一些 。
private sub form_load()
timer1.interval = 1
timer1.enabled = true
end sub

private sub timer1_timer()
dim i as integer
static n(255) as integer
for i = 0 to 255
if n(i) GetAsyncKeyState(i) then
n(i) = GetAsyncKeyState(i)
Me.caption = ”按键码“& i & “ ” & 状态码 & n(i)
'按键码自己处理一下,我只是帮你显示出来了
enf if
next
end sub
'用 gxhackji 的方法只能判断本窗体中的按键, 这个可以判断其它窗体的按键 。
'可以用来做键盘记录哦。。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式