本人刚接触VB,请大家指点。form1的已打开
代码如下:运行的时候按键盘上的左箭头没有反应
我又把37换成100后运行,按小键盘上的4键程序正常执行。
不明白为什么方向键不好用?如何改代码才能让其用方向键一样可以正常执行?

解决方案 »

  1.   

    随手做个测试, 新建工程,窗体代码如下:Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Me.Caption = KeyCode
    End Sub
      

  2.   

    谢谢指点。
    不过我是想在form里面建一个command,然后用键盘上的方向键来移动。
      

  3.   

    谢谢指点。
    不过我是想在form里面建一个command,然后用键盘上的方向键来移动。原因未知, Command控件可以响应其他按键,方向键无效. 
    不过可以用其他控件替代Command, 比如Picture控件, Command能做的它都能做.
      

  4.   

    系统缺省地将箭头键的功能用于控制之间的跳转。如果你想重新设定箭头键的作用,需要用钩子抓,或者将焦点限定在 TextBox 等编辑控件中。
      

  5.   

    谢谢指点。
    不过我是想在form里面建一个command,然后用键盘上的方向键来移动。原因未知, Command控件可以响应其他按键,方向键无效. 
    不过可以用其他控件替代Command, 比如Picture控件, Command能做的它都能做.
    Picture和image都试过了   问题依旧    烦屎了
      

  6.   

    上次也有人问过
    大意是定义了4个按键的同时想按4个方向键也能操作我的答案如下:在Form里添加一个Text作为截取方向键的容器
    因为不能设置隐藏只好将其移出Form显示范围之外并将其TabIndex设为0
    当点击按钮后将焦点转回Text下段程序已测试通过:Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
      Select Case KeyCode
        Case vbKeyUp
          Label1.Caption = "UP"
        Case vbKeyDown
          Label1.Caption = "Down"
        Case vbKeyLeft
          Label1.Caption = "Left"
        Case vbKeyRight
          Label1.Caption = "Right"
        Case Else
        End Select
    End Sub
     
    Private Sub Cmd_Up_Click()
      Label1.Caption = "UP"
      Text1.SetFocus
    End Sub
     
    Private Sub Cmd_Down_Click()
      Label1.Caption = "Down"
      Text1.SetFocus
    End Sub
     
    Private Sub Cmd_Left_Click()
      Label1.Caption = "Left"
      Text1.SetFocus
    End Sub
     
    Private Sub Cmd_Right_Click()
      Label1.Caption = "Right"
      Text1.SetFocus
    End Sub
      

  7.   

    谢谢指点。
    不过我是想在form里面建一个command,然后用键盘上的方向键来移动。原因未知, Command控件可以响应其他按键,方向键无效. 
    不过可以用其他控件替代Command, 比如Picture控件, Command能做的它都能做.
    Picture和image都试过了   问题依旧    烦屎了我测试了picture控件, 可以响应方向键.
      

  8.   

    与 Picture 作为容器的状态有关。如果 Picture 内部有控件,方向键的功能依然被定义为控件之间的跳转。
      

  9.   

    谢谢指点。
    不过我是想在form里面建一个command,然后用键盘上的方向键来移动。原因未知, Command控件可以响应其他按键,方向键无效. 
    不过可以用其他控件替代Command, 比如Picture控件, Command能做的它都能做.
    Picture和image都试过了   问题依旧    烦屎了我测试了picture控件, 可以响应方向键.
    刚才我又仔细的试了一下,picture还是不行,反而我之前说image说不好用的,这次试的却好用了。
    代码:
    代码都一样,只是用的控件不同。最后感觉像command和picture等这样的控件在vb里好像都不如用方向键来移动。
    谢谢你的好像帮助!
      

  10.   

    后来我又在command外面套了个frame,然后分别控制移动command和frame,最后都失败了目前发现只有在form里放一个image,用方向键控制才好用。最后谢谢大家的帮忙,这里是个好地方。