Touchscreen keyboard Layout

Hello,

Is there a way to change the keyboard layout of the touchscreen ?
One of my client would like to have it displayed as an AZERTY (french) layout. It tried to use the langage selector and added the french langage but it has no effect on the keyboard layout.

My version is 7.7.1.

Thank you.

1 Like

Does not sound inspiring :confused:

I’ve got something in mind. It’s way in the back of my mind and I’ll need to dig for it. My wife says the some thing about our garage…

You are using a Windows client?

Yes, it is a Windows client.

I was able to use the Windows OSK. It opens then a field is mouseClicked, and closes when the Enter key is released.

This is a very rough implementation, so results may vary. :wink: Things like focus may not always work correctly, such as clicking onto another field without hitting enter first. But hopefully it will point you to a workaround solution.

test_OSK_2017-05-09_0956.proj (4.7 KB)

EDIT: Updated link.

1 Like

Thank you very much. That helps me a lot. I can work on this to improve but the idea is great !

Thank you again.

Hi

I tried to download the example project test_OSK_2014-12-11_0711.proj3 , but the link does not work anymore
Can you fix the problem?

Andrea

Link has been updated. Still pops up on Windows 10, but does not close on Enter key. Like I said, very rough. :slight_smile:

Hey,

I have the same problem. Since the last reply has been made in 2014, are there some other solutions for this problem?
We need a german layout on a Surface 4. The english version of the touch keyboard works great but the users are not happy about searching for letters…furthermore, umlauts do not exist on the eng. layout.
I’ve tried the postet project, but only a error box pops up when I click the buttons -“can’t start the on screen keyboard”. Unfortunately, I’m not skilled enough to solve the problem…

Thanks in advance :slight_smile:

Hi LuMi,

Can you run osk.exe from a command prompt? If not, then you either don’t have it installed, or you need the full path to the executable.

Hey JordanCClark,
thanks for your answer!
I can open the osk.exe from the command prompt. I’ve changed the script to:

import os
os.popen(“C:\Windows\System32\osk.exe”)

the path is the same as used in the command prompt but it didn’t solve the problem. :expressionless:

Backslashes in python are used to escape characters (an example is ‘\r’ for carriage return). If you need a backslash character, you need to use two of them.

So, your full path would look more like:

os.popen("C:\\Windows\\System32\\osk.exe")

Or just upgrade the OS to something sane… (-;

Not to digress, but Python is also pretty generous with OS paths, and this will work just as well:

import os
os.popen("C:/Windows/System32/osk.exe")

This is the closest emoji I could find in response to Phil: :stuck_out_tongue_closed_eyes: Heh.

Back to Win10…

Another thing I’ve found, looking back over this, is that OSK requires elevated privileges to run. And to kill. If you are running the client under a non-admin user, that could be why it doesn’t launch. It’s also why, even if it does launch, you can’t kill it afterwards. Popen() doesn’t work that way :unamused:

Let me mull this over a bit…

Hackier version:

Use shortcuts with elevated priviliges.

Attachment has two shortcuts: oskOn and oskOff (imaginative, right?)
oskSwitch.zip (1.9 KB)

Example:
place the two files in C:\oskSwitch\

for each text field:


mouseReleased event:

import os
os.popen('C:/oskSwitch/oskOn.lnk')


keyReleased event:

if event.keyCode==10:
  import os
  os.popen('C:/oskSwitch/oskOff.lnk')


Personally, I hate it.