393 views
in GUI Development by
Hi Everyone,

    I am learing in embedded wizard,so i have doubt in virtual keybaord.

   when i change numeric key layout,it is showing (,),<,>  these characters layout.i trace the code here i am not able to identify the layout changing part

  1.  how to replace same key with numeric chacters

   2.how to change the layout  

  3.how to add layout here

   code :

     else if ((textKeyView == SymbolButton) || (textKeyView == SymbolButton2))
{
  // Depending on the actual symbol button state -> load the right layout
  // version of the keyboard
  if ( keyboardLayout == ExtendedVirtualKeyboard::CharacterLayout.SpecialCharacters )
    keyboardLayout = ExtendedVirtualKeyboard::CharacterLayout.ShiftOff;
  else
    keyboardLayout = ExtendedVirtualKeyboard::CharacterLayout.SpecialCharacters;
}

 

can you please guide me.it is more helpful for me

1 Answer

0 votes
by
Hi Ramesh,

let me answer your questions:

1. When you activate the special characters through '123' the characters which are stored at the variable layoutSpecialOn are used and applied on the keyboard buttons. If you want to replace for example the (,),<,> keys with numeric characters than modify the string stored at layoutSpecialOn. Be aware that when you change it at ExtendedVirtualKeyboard::KeyboardQWERTZ this will also affect its derived keyboard layouts unless this variable is not overwritten there.

2. You can change the bounds of the keyboard buttons within the specific layout e.g. at ExtendedVirtualKeyboard::KeyboardQWERTZ

3. I need here more information from you. Do you want to create a complete new keyboard layout to support a new language. Those layouts can be switched through the globe button. Or do you want to add here a new button like the '123' button which shows different characters on the same keyboard layout?

Regards,

Julian
by
Hi Julian,

   Thanks for the update.i want to add special character only not new language.
by
Here Using layoutSpecialOn  applied keyboard buttons.i added font property here but it is not displayed in layout

ExtendedVirtualKeybaord::Button.UpdateLayout  ->in this function added property

super( aSize );

Frame.Bounds.size = aSize;

if ( textView != null )
{
  textView.Bounds.size = aSize;
   textView.Font=Application::Application::FontL;
  }
   

 

but it is not reflect in layout
by

Hi Ramesh,

the method UpdateLayout() gets invoked automatically after the size of the component has been changed. It is recommended to only do here layouting. Despite from this the font is set inside UpdateViewState() by:

textView.Font = Appearance.Font;

If you want to change the font than change the font at the ExtendedVirtualKeyboard::KeyInputConfig autoobject you are using e.g. ExtendedVirtualKeyboard::DarkMultiConfig.Font

Regards,

Julian

Ask Embedded Wizard

Welcome to the question and answer site for Embedded Wizard users and UI developers.

Ask your question and receive answers from the Embedded Wizard support team or from other members of the community!

Embedded Wizard Website | Privacy Policy | Imprint

...