Virtual Keyboard generates low-level events by calling functions of the Java Robot class. The operating system dispatches them to active window and its focused controls. If you need to send keyboard input to a specific text-entry control, you must ensure the control is focused, e.g. by calling its requestFocus method.
If you need to send keyboard input to an external process, you must ensure your own application's window does not activate when the user clicks on it. Enabling the keyboard's Standalone property sets appropriate flags for the root JFrame to prevent that.
By default, VirtualKeyboard emulates the auto-repeat feature of physical keyboards. You can disable this by setting AutoRepeat to false. You can control auto-repeat timing using RepeatDelay and RepeatRate properties.