Site hosted by Angelfire.com: Build your free website today!
The Command Button's KeyPress, KeyDown and KeyUp Events
The events that will be mentioned in the following pages
are commonly used, and without learning about them
you really can't go anywhere in Visual Basic programming.

To try these examples, start a new project (as being
taught in Section 1).

Add 1 Command Button to your form. The Command
Button is called by default Command1.

Copy the following code to the code window (you
can copy and paste it using Ctrl + C for copying
and Ctrl + V for pasting):


Private Sub Command1_KeyDown(KeyCode As Integer, Shift As Integer)
    Print "KeyDown"
End Sub

Private Sub Command1_KeyPress(KeyAscii As Integer)
    Print "KeyPress"
End Sub

Private Sub Command1_KeyUp(KeyCode As Integer, Shift As Integer)
    Print "KeyUp"
End Sub



When the Command Button's KeyDown event will be executed,
"KeyDown" will be printed on the form,
When the Command Button's KeyPress event will be executed,
"KeyPress" will be printed on the form, and when
the Command Button's KeyUp event will be executed,
"KeyUp" will be printed on the form.


Run the program, and click the button with the mouse.
Nothing has happened.
It's because the KeyDown, Key_Press, and KeyUp events are
being executed Only when you press a key on the keyboard.

Now press any key on the keyboard, hold it down for few seconds,
and then release it.
Your form will look like this:

Figure 1


Lets see:
The first event that been executed is the KeyDown event,
becuase "KeyDown" was the first text that been printed on the form.

The second event was KeyPress, and then again KeyDown.
After every KeyDown event that been executed, a KeyPress
event had been executed.

We learnt that when a key is being holded down, the
KeyDown and the KeyPress events are being executed in
this order over and over again, until the key is up again.

When you release the key, the KeyUp event is being executed once.


Learning about Parameters
Parameters are variables that being passed to a Sub.

Look at the first line of the Command Button's Click event:

Private Sub Command1_Click()

And at the first line of the Command Button's KeyPress event:

Private Sub Command1_KeyPress(KeyAscii As Integer)


The Click event's first line is ended with
empty parentheses   ()   and the KeyPress event's first
line is ended with  (KeyAscii As Integer)


What is the   (KeyAscii As Integer)   ?
It's a parameter that been passed to the KeyPress event.

This parameter is an Integer variable with the name KeyAscii.
Like if you've declared     Dim KeyAscii As Integer

Why do we need this variable?
Because its value is very useful.

The KeyPress event is being executed when the user
press a key, and This variable holds the Ascii value of the
key that been pressed.
With This Ascii value you can know on which key
the user has pressed.

For exmaple, the Ascii value of the "A" character is 65.
If the user has pressed the key "A" on the keyboard,
The KeyAscii parameter value will be 65.

Lets see an example.
Insert the following line to the Command1 KeyPress event:

Private Sub Command1_KeyPress(KeyAscii As Integer)
    Print KeyAscii
End Sub


Run the program and press several keys.
You will see the Ascii value of every key you're pressing.

Notice that the KeyAscii values of "A" and "a" are differents.
Every characters has its own KeyAscii value,
and 2 characters that are the same letter, but have different case,
have different KeyAscii value.


[ Next ]

Total : 8 Pages

 

 © 1997-2001 Ronaldsoft Network. All rights reserved. Designed by: Ronaldsoft