Change Keyboard Input Language

Using HTML 5 to change the keyboard language on mobile devices

I think this's not really possible ,the problem you will encounter is that the keyboard is itself an application depends on the users locale , therefore you cannot change it directly from your web html page, nor can you guarantee that your user will have the "Arabic" charset and the keyboard depends alos on mobile device OS

Here's an example for html mobile input type :

http://mobileinputtypes.com/

How to change Input Keyboard Layout programmatically In Pyqt5?

So Qt doesn't offer this, but you can ask your OS to do it for you.

Assuming you're just looking at Windows, you can change the current keyboard layout in python using pywin32, which lets you easily access the Windows API from your script. Once installed into your Python environment you can
import win32api and then use a call like win32api.LoadKeyboardLayout('00000809',1) to set the layout (the values I've put here set it to UK English). The first parameter is a string representing the keyboard layout to use, and the second is a flag. See documentation.

I found this list of KLIDs (Keyboard Layout IDs), which shows two for Tamil keyboards. "00000449" is Tamil, "00020449" is Tamil 99. The 449 at the end means Tamil, and the two digits before set which subtype of Tamil keyboard to use (e.g. 20 for Tamil 99) - I can't find one for Tamil phonetic, but maybe you'll be able to find it.

You can set up your program to call these functions whenever you want it to switch keyboard (for example, when your user activates a specific text input box).

Also, if you want to check the current keyboard layout you can use win32api.GetKeyboardLayout(0) (doc). Maybe you can use this to figure out what the IDs are for each of the Tamil keyboards you want to use. Mind that it returns an int for the locale id rather than a string.

Other useful keyboard related functions are win32api.GetKeyboardLayoutList() (to find all the locales installed on the current machine), win32api.GetKeyboardLayoutName() and win32api.GetKeyboardState - documentation for all these can be found here.

Windows 10 detect keyboard layout change

I found another way to detect such changes: to use SetWindowsHookEx with WH_SHELL. One of the available event is HSHELL_LANGUAGE which is exactly what I need and the test project seems to work just fine.
There's an article by Alexander Shestakov that describes a program very similar to what I'm trying to achieve and it also has a link to github project that I use as an example.

Change keyboard language by jQuery

You cannot change the keyboard layout with Javascript. Javascript has no control over the client OS.

What you can do is change the keys, what they do..

An answer to this question has already been set on this thread:
change keyboard layout with javascript



Related Topics



Leave a reply



Submit