Configurable virtual keyboard

Hi everyone.

I’ve seen mention of a ‘configurable virtual keyboard’ in the documentation, but haven’t found a description of the virtual keyboard or any configuration options. Can anyone point me to a description of the virtual keyboard capabilities?

Regards,
Greg Shearer

Hi Greg,

Now we will show you how to use the virtual keyboard, follow the steps:

You can go in Edit > Displays > Displays > “NET Clients” and do the configuration as shown in the image below:

Then, you can create for example a TextBox to use the virtual keyboard:

image

This TextBox will run the following script:

public void MouseLeftButtonDown1(object sender, System.Windows.Input.InputEventArgs e){
	
	bool isPassword = false;
	TK.ShowOnScreenKeyboard("Client.Simulation", isPassword, OnScreeKeyboardClosed);
	
	
}


private void OnScreeKeyboardClosed(bool ok, string tagName, string oldValue, string newValue)
{
	if(!ok) // User canceled operation
		return;
	
	TK.SetObjectValue(@Tag.TextTag.GetName(), newValue);
	
}

Then, when you click on the TextBox this popup will appear:

Let us know if it helps you, please.

Best Regards,
Tatsoft Team.

Hi Eduardo.

Thanks for your response which certainly answers my question. I am slowly learning my way around Factory Studio but hadn’t yet investigated the Client Window Settings.

I doubt I will ever need an on-screen full keyboard … but if so … would that require an additional third party DLL?

1 Like

Hi Greg, I tried the method from Eduardo and it gave me a full keyboard? I have my TextTag set to ‘text’ not integer though?

Following on from this @supportTatsoft, is there a way to format the size of the keyboard? I have an application where the screen is a smaller format so I would like to make it larger on the screen?

Thanks, Bob

Hi Greg and Bob,

Yes, you can use a .dll to import a new keyboard, you can select the .dll in the following path

Currently there is no way to change the keyboard size. If you really need it or need something more especific, please send an e-mail to our support team: support@tatsoft.com

Best Regards,
Tatsoft Team.

Hi Bob and Eduardo .. and Happy New Year :slight_smile:

I am resurrecting this post, as we have just realised that v10 does not appear to include TK.ShowOnScreenKeyboard().

This is disappointing, as we have only just started working on applications which require an on-screen keypad. Can anyone offer advice on how this can best be done?

Assuming TK.ShowOnScreenKeyboard() is not going to be implemented, some detailed instructions on an alternative method would be really appreciated. This would particularly be the case if it involves integration with an external dll or similar.

In particular, we require the keypad to function well within HTML5 or Portable displays.

Any advice that you can provide will be really appreciated.

Regards,
Greg Shearer

.. and I knew I should have checked this out further first .. as I’ve just found that an on-screen keyboard will appear automatically when the ‘Client Settings→OnScreenKeyboard is enabled :smirking_face:

I now realise that this will not work with HTML5 clients .. however some other relevant questions have been raised …

  1. Is it possible to programmatically configure the ‘keyboard’ as a ‘keypad’ only?
    This is all that our applications will ever need .. so is almost essential.
    Worst case .. we may need to build our own popup screen for this purpose.
  2. Can the positioning of the ‘keyboard’ be specified?
    When opened on my PC it automatically moves to screen far left.
  3. Can the ‘keyboard’ be told to open/switch to NUM mode .. as this what we always need.
    When opened in my application it is always in ALPHABETIC mode.

If the keyboard configuration is rigid, some advice on implementing alternatives would definitely be appreciated.

Also .. although activating a keypad by clicking/touching a text box is useful .. we would also expect to be initiating entry of tag values from CodeBehind for use in calculations etc without reference to a text box. This may require controlling the keypad label etc, as well as providing a tag as a parameter.

It looks like we will definitely be writing our own popup .. as I only just realised that the OnScreenKeyboard is indicated as being for Rich and Smart Clients only :smirking_face:

The questions I’ve asked above are still relevant however, as I also expect to need a popup keypad in future RichClient applications.

Regards,
Greg Shearer

Hi Greg,

The programmatic control methods for OnScreenKeyboard (such as forcing keypad-only layout, defining position, or opening directly in NUM mode) have not been implemented yet, as this functionality is still under development.

While the frameworX keyboard control features are still being implemented, you may use the Windows Virtual Keyboard as an alternative.

I have prepared an example project that demonstrates how to open the Windows Virtual Keyboard programmatically, and I will send it to you as a reference.

Project Example

Regards,
Tatsoft Team.