Sending a keyboard event from java to any application (on-screen-keyboard)

后端 未结 5 1104
一向
一向 2021-01-03 06:58

I am working on developing an on-screen keyboard with java. This keyboard has a JComponent for every possible key. When a mouse down is detected on the button

5条回答
  •  梦毁少年i
    2021-01-03 07:29

    The only solution I could find so far, is to make every key a JComponent (so it can not have focus), and set the following properties on the JFrame:

        setUndecorated(true);
        setFocusableWindowState(false);
        setFocusable(false);
        enableInputMethods(false);
    

    Now when using the robot class I can send events to any focused window by clicking on the keys. The only limitation, is that it only seems to work for windows that belong to the same virtual machine, and it doesn't work at all with any other system window.

提交回复
热议问题