- Qt 6.11
- Qt Virtual Keyboard
- QML Types
- QtQuick.VirtualKeyboard.Components
- KeyboardLayout
- Qt Virtual Keyboard | Commercial or GPLv3

# KeyboardLayout QML Type

Keyboard layout. More...

Import Statement: | `import QtQuick.VirtualKeyboard.Components`
Inherits: | ColumnLayout

- List of all members, including inherited members

## Properties

- inputMethod : var
- inputMode : int
- keyWeight : real
- sharedLayouts : var
- smallTextVisible : bool `(since QtQuick.VirtualKeyboard 2.0)`

## Methods

- createInputMethod()

## Detailed Description

This type is the root element of the keyboard layout. Use this element to build a new keyboard layout.

Example:

     import QtQuick
     import QtQuick.Layouts
     import QtQuick.VirtualKeyboard

     // file: layouts/en_GB/main.qml

     KeyboardLayout {
         KeyboardRow {
             Key {
                 key: Qt.Key_Q
                 text: "q"
             }
             Key {
                 key: Qt.Key_W
                 text: "w"
             }
             Key {
                 key: Qt.Key_E
                 text: "e"
             }
             Key {
                 key: Qt.Key_R
                 text: "r"
             }
             Key {
                 key: Qt.Key_T
                 text: "t"
             }
             Key {
                 key: Qt.Key_Y
                 text: "y"
             }
         }
     }

## Property Documentation

### inputMethod : var

Sets the input method to be used in this layout.

This property allows a custom input method to be used in this layout.

### inputMode : int

Sets the input mode to be used in this layout.

By default, the virtual keyboard attempts to preserve the current input mode when switching to a different keyboard layout.

If the current input mode is not valid in the current context, the default input mode is specified by the input method.

### keyWeight : real

Sets the key weight for all children keys.

The default value is inherited from the parent element in the layout hierarchy.

### sharedLayouts : var

List of layout names which share the input method created by the createInputMethod() function.

If the list is empty (the default) the input method is not shared with any other layout and will be destroyed when the layout changes.

The list should contain only the name of the layout type, e.g., ['symbols']. The current layout does not have to be included in the list.

### smallTextVisible : bool `[since QtQuick.VirtualKeyboard 2.0]`

Sets the `smallTextVisible` for all children keys.

The default value is inherited from the parent element in the layout hierarchy.

This property was introduced in QtQuick.VirtualKeyboard 2.0.

## Method Documentation

### createInputMethod()

This function may be overridden by the keyboard layout to create the input method object dynamically. The default implementation returns `null`.

The input method object created by this function can outlive keyboard layout transitions in certain cases. In particular, this applies to the transitions between the layouts listed in the sharedLayouts property.