+ 1
Making my own Keyboard
Share Anything Code Hi I want to make my own keyboard with special alphabeth for daily use just like gboard can someone tell me where to start and what to do?
10 Antworten
+ 3
Use the 'pyautogui' module. It has got many functions to create a virtual keyboard. The following functions will help you:
i) pyautogui.typewrite(<string>):
Simulates the typing of a string character by character. If the cursor is focused on some text box the parameter you supplied will be typed there. The parameter can be a character too. Eg. pyautogui.typewrite('Hello world')
ii)pyautogui.keyDown(<keyname>): It simulates the holding a key in lock position. Helpful in cases such as numlock, capslock, scrolllock.
iii)pyautogui.keyUp(<keyname>):Releases the key that was hold down in the previous method.
iv)pyautogui.press(<keyname>):It simulates a single keystroke. It does not holds the key in lock position. Useful for keys such as: F1-12, ctrl, bksp, pgdn, etc.
v) pyautogui.hotkey(<key1>,<key2>): It simulates the pressing of a hotkey. Eg. pyautogui.hotkey('ctrl','c')
+ 2
I don't know how to do it in java but if python is ok for you, then I can surely help you.
+ 2
The UI is upto you and you can do something like:
button.onclick = lambda: pyautogui.press(<name of the button>)
(Syntax depends upon the GUI module you are using)
pyautogui also gives you control over user's mouse but I'd recommend you to read the docs for that.
+ 2
Thank you kind sir for help
+ 2
Jalaj Kumar, can this (with Python) also be done in a way that it doesn't only work inside that Python-program, but for your whole PC while the program runs, as if to make some sort of override keyboard driver to use it in different applications?
+ 2
HonFu Yes you can do that. When the program is running wherever the cursor is focused, it will type the text over there. Try this:
import pyautogui as pg
import time
for i in range(10):
pg.typewrite("Hello world")
time.sleep(1)
Run this code and as soon as it launches, open some application like notepad, word or any text editor.
You'll find "Hello world" printed there 10 times.
+ 2
HonFu I think that we can do something like detecting the pressed key and then using pyautogui to trigger some other key. Something like:
import keyboard as kb
import pyautogui as pg
kb.on_press_key("a", lambda evt: pg.press("alt"))
But there's a problem with this. The function triggered by default when you press that key (here, a) will also be performed along with the function we defined. That is, when you press 'a' on the keyboard, with the above program running, it will work as if you pressed 'a' and 'alt' both.
And for Rasim Özcan Öz 's question about Android:
I haven"t tried it on android.So, you got to try it out yourself.
+ 1
How can I make it ?
+ 1
Also does it work for android phones?
0
Whooo, creepy! And wildly useful as well. 😁
Can you define and redefine all sorts of key combos, like giving the letter 'a' the role to open up a new level, like alt?