none
關於VB6 Form Keydown事件的觸發問題.... RRS feed

  • 問題

  • HI~!!

    小弟又來請教各位大大嚕^^

    最近小弟做題目遇到了一個滿傷腦筋的問題

    小弟要做四個command 分別是上、下、左、右

    但是當這四個command的visible為True時

    Form的Keydown事件就無法觸發......會變成Focus在command上跑來跑去......

    請各位大大幫小弟指點迷津吧^^"

    謝謝!!

    以下是KeyDown事件的程式碼

    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

    Select Case KeyCode

    Case vbKeyUp

    Shape1.Top = Shape1.Top - 50

    Case vbKeyDown

    Shape1.Top = Shape1.Top + 50

    Case vbKeyLeft

    Shape1.Left = Shape1.Left - 50

    Case vbKeyRight

    Shape1.Left = Shape1.Left + 50

    End Select
    End Sub

    2006年12月2日 上午 05:48

解答

所有回覆

  • Form有一個屬性叫做KeyPreview 要設定為True. 這樣就可以了
    2006年12月2日 上午 07:01
  • 恩....達文C按照大大的建議設定過了!!

    不過還是一樣Focus跑來跑去.....

    用Form.SetFocus上可以嗎??

    目前只有把所有command的visible改為false才有效.....

     

    2006年12月2日 上午 07:52
  • 你如果不想要在Command上跑的話 可以將Command的Tabstop設為false
    2006年12月2日 上午 09:09