QKeyEvent

The QKeyEvent class describes a key event. More

Inheritance diagram of PySide2.QtGui.QKeyEvent

Synopsis

Functions

Detailed Description

Key events are sent to the widget with keyboard input focus when keys are pressed or released.

A key event contains a special accept flag that indicates whether the receiver will handle the key event. This flag is set by default for KeyPress and KeyRelease , so there is no need to call accept() when acting on a key event. For ShortcutOverride the receiver needs to explicitly accept the event to trigger the override. Calling ignore() on a key event will propagate it to the parent widget. The event is propagated up the parent widget chain until a widget accepts it or an event filter consumes it.

The setEnabled() function can be used to enable or disable mouse and keyboard events for a widget.

The event handlers keyPressEvent() , keyReleaseEvent() , keyPressEvent() and keyReleaseEvent() receive key events.

See also

QFocusEvent grabKeyboard()

class PySide2.QtGui.QKeyEvent(type, key, modifiers[, text=""[, autorep=false[, count=1]]])

PySide2.QtGui.QKeyEvent(type, key, modifiers, nativeScanCode, nativeVirtualKey, nativeModifiers[, text=””[, autorep=false[, count=1]]])

param type:

Type

param nativeModifiers:

int

param modifiers:

KeyboardModifiers

param autorep:

bool

param nativeScanCode:

int

param nativeVirtualKey:

int

param count:

ushort

param text:

str

param key:

int

Constructs a key event object.

The type parameter must be KeyPress , KeyRelease , or ShortcutOverride .

Int key is the code for the Key that the event loop should listen for. If key is 0, the event is not a result of a known key; for example, it may be the result of a compose sequence or keyboard macro. The modifiers holds the keyboard modifiers, and the given text is the Unicode text that the key generated. If autorep is true, isAutoRepeat() will be true. count is the number of keys involved in the event.

Constructs a key event object.

The type parameter must be KeyPress , KeyRelease , or ShortcutOverride .

Int key is the code for the Key that the event loop should listen for. If key is 0, the event is not a result of a known key; for example, it may be the result of a compose sequence or keyboard macro. The modifiers holds the keyboard modifiers, and the given text is the Unicode text that the key generated. If autorep is true, isAutoRepeat() will be true. count is the number of keys involved in the event.

In addition to the normal key event data, also contains nativeScanCode , nativeVirtualKey and nativeModifiers . This extra data is used by the shortcut system, to determine which shortcuts to trigger.

PySide2.QtGui.QKeyEvent.nScanCode
PySide2.QtGui.QKeyEvent.nVirtualKey
PySide2.QtGui.QKeyEvent.nModifiers
PySide2.QtGui.QKeyEvent.autor
PySide2.QtGui.QKeyEvent.count()
Return type:

int

Returns the number of keys involved in this event. If text() is not empty, this is simply the length of the string.

See also

WA_KeyCompression

PySide2.QtGui.QKeyEvent.isAutoRepeat()
Return type:

bool

Returns true if this event comes from an auto-repeating key; returns false if it comes from an initial key press.

Note that if the event is a multiple-key compressed event that is partly due to auto-repeat, this function could return either true or false indeterminately.

PySide2.QtGui.QKeyEvent.key()
Return type:

int

Returns the code of the key that was pressed or released.

See Key for the list of keyboard codes. These codes are independent of the underlying window system. Note that this function does not distinguish between capital and non-capital letters, use the text() function (returning the Unicode text the key generated) for this purpose.

A value of either 0 or Key_unknown means that the event is not the result of a known key; for example, it may be the result of a compose sequence, a keyboard macro, or due to key event compression.

See also

WA_KeyCompression

PySide2.QtGui.QKeyEvent.matches(key)
Parameters:

keyStandardKey

Return type:

bool

Returns true if the key event matches the given standard key ; otherwise returns false .

PySide2.QtGui.QKeyEvent.nativeModifiers()
Return type:

int

Returns the native modifiers of a key event. If the key event does not contain this data 0 is returned.

Note: The native modifiers may be 0, even if the key event contains extended information.

PySide2.QtGui.QKeyEvent.nativeScanCode()
Return type:

int

Returns the native scan code of the key event. If the key event does not contain this data 0 is returned.

Note: The native scan code may be 0, even if the key event contains extended information.

Note: On macOS, this function is not useful, because there is no way to get the scan code from the system APIs. The function always returns 1 (or 0 in the case explained above).

PySide2.QtGui.QKeyEvent.nativeVirtualKey()
Return type:

int

Returns the native virtual key, or key sym of the key event. If the key event does not contain this data 0 is returned.

Note: The native virtual key may be 0, even if the key event contains extended information.

PySide2.QtGui.QKeyEvent.__ne__(arg__1)
Parameters:

arg__1StandardKey

PySide2.QtGui.QKeyEvent.__eq__(key)
Parameters:

keyStandardKey

Return type:

bool

PySide2.QtGui.QKeyEvent.__eq__(key)
Parameters:

keyStandardKey

Return type:

bool

PySide2.QtGui.QKeyEvent.text()
Return type:

str

Returns the Unicode text that this key generated.

Return values when modifier keys such as Shift, Control, Alt, and Meta are pressed differ among platforms and could return an empty string.

Note

key() will always return a valid value, independent of modifier keys.

See also

WA_KeyCompression