comp • gb.desktop • desktop • sendkeys

Desktop.SendKeys (gb.desktop)

Static Sub SendKeys ( Keys As String )

Send fake keyboard events to the window having the focus.

Keys is the list of keys that are sent successively.

Each key name must be enclosed between '[' and ']', but you can send any ASCII or LATIN-1 character as is. You can send the '\n' character for the RETURN key, and the '\t' for the TAB key.

All key names are defined in the /usr/include/X11/keysymdef.h X11 header file.

To get a key name, you must remove the XK_ prefix from the constants defined in the keysymdef.h file.

Moreover, these key names are now case sensitive, and they are not always consistent: for example, Return with the first letter in uppercase, but space with all letters in lowercase.

If several keys must be pressed simultaneously, they must be enclosed between '{' and '}'. To send the '{' ASCII character, use '{{}'.

What is sent is not a string, but the internal key codes associated with them. Hopefully, this function automatically takes care of sending the needed modifiers before sending an ASCII character.

Examples

To send a new line, you can do:

Desktop.SendKeys("\n")

or

Desktop.SendKeys("[Return]")

To send the string "Gambas Almost Means BASic", you can do:

Desktop.SendKeys("Gambas Almost Means BASic")

What is done behind the scene is the following:

Desktop.SendKeys("{[Shift_L]g}ambas {[Shift_L]a}lmost {[Shift_L]m}eans {[Shift_L]b}{[Shift_L]a}{[Shift_L]s}ic")

}