Private Sub Form_KeyPress(KeyAscii As Integer) X = Image1.Top Y = Image1.Left If KeyAscii = 38 Then '图片向上移动 Y = Y - 100 X = Image1.Top Form1.Image1.Move Y End If If KeyAscii = 39 Then '图片向右移动 X = X + 100 Y = Image1.Left Form1.Image1.Move Y, X End If If KeyAscii = 40 Then '图片向下移动 Y = Y + 100 X = Image1.Top Form1.Image1.Move Y End If If KeyAscii = 37 Then '图片向左移动 X = X - 100 Y = Image1.Left Form1.Image1.Move Y, X End If End Sub
2。 在窗体的keyup事件中写入 msgbox keycode
你就可看到结果
vbKeyRButton 0x2 鼠标右键
vbKeyCancel 0x3 CANCEL 键
vbKeyMButton 0x4 鼠标中键
vbKeyBack 0x8 BACKSPACE 键
vbKeyTab 0x9 TAB 键
vbKeyClear 0xC CLEAR 键
vbKeyReturn 0xD ENTER 键
vbKeyShift 0x10 SHIFT 键
vbKeyControl 0x11 CTRL 键
vbKeyMenu 0x12 MENU 键
vbKeyPause 0x13 PAUSE 键
vbKeyCapital 0x14 CAPS LOCK 键
vbKeyEscape 0x1B ESC 键
vbKeySpace 0x20 SPACEBAR 键
vbKeyPageUp 0x21 PAGE UP 键
vbKeyPageDown 0x22 PAGE DOWN 键
vbKeyEnd 0x23 END 键
vbKeyHome 0x24 HOME 键
vbKeyLeft 0x25 LEFT ARROW 键
vbKeyUp 0x26 UP ARROW 键
vbKeyRight 0x27 RIGHT ARROW 键
vbKeyDown 0x28 DOWN ARROW 键
vbKeySelect 0x29 SELECT 键
vbKeyPrint 0x2A PRINT SCREEN 键
vbKeyExecute 0x2B EXECUTE 键
vbKeySnapshot 0x2C SNAPSHOT 键
vbKeyInsert 0x2D INSERT 键
vbKeyDelete 0x2E DELETE 键
vbKeyHelp 0x2F HELP 键
vbKeyNumlock 0x90 NUM LOCK 键
A 至 Z 键与 A – Z 字母的 ASCII 码相同
0 至 9 键与数字 0 – 9 的 ASCII 码相同
下列常数代表数字键盘上的键:常数 值 描述
vbKeyNumpad0 0x60 0 键
vbKeyNumpad1 0x61 1 键
vbKeyNumpad2 0x62 2 键
vbKeyNumpad3 0x63 3 键
vbKeyNumpad4 0x64 4 键
vbKeyNumpad5 0x65 5 键
vbKeyNumpad6 0x66 6 键
vbKeyNumpad7 0x67 7 键
vbKeyNumpad8 0x68 8 键
vbKeyNumpad9 0x69 9 键
vbKeyMultiply 0x6A MULTIPLICATION SIGN (*) 键
vbKeyAdd 0x6B PLUS SIGN (+) 键
vbKeySeparator 0x6C ENTER 键
vbKeySubtract 0x6D MINUS SIGN (–) 键
vbKeyDecimal 0x6E DECIMAL POINT (.) 键
vbKeyDivide 0x6F DIVISION SIGN (/) 键
下列常数代表功能键:常数 值 描述
vbKeyF1 0x70 F1 键
vbKeyF2 0x71 F2 键
vbKeyF3 0x72 F3 键
vbKeyF4 0x73 F4 键
vbKeyF5 0x74 F5 键
vbKeyF6 0x75 F6 键
vbKeyF7 0x76 F7 键
vbKeyF8 0x77 F8 键
vbKeyF9 0x78 F9 键
vbKeyF10 0x79 F10 键
vbKeyF11 0x7A F11 键
vbKeyF12 0x7B F12 键
vbKeyF13 0x7C F13 键
vbKeyF14 0x7D F14 键
vbKeyF15 0x7E F15 键
vbKeyF16 0x7F F16 键
四个方向键的键值分别和符号$,%,&,*的键值相同,按下shift+符号键才响应KeyPress事件.????
X = Image1.Top
Y = Image1.Left
If KeyAscii = 38 Then '图片向上移动
Y = Y - 100
X = Image1.Top
Form1.Image1.Move Y
End If
If KeyAscii = 39 Then '图片向右移动
X = X + 100
Y = Image1.Left
Form1.Image1.Move Y, X
End If
If KeyAscii = 40 Then '图片向下移动
Y = Y + 100
X = Image1.Top
Form1.Image1.Move Y
End If
If KeyAscii = 37 Then '图片向左移动
X = X - 100
Y = Image1.Left
Form1.Image1.Move Y, X
End If
End Sub