Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# QKeyEvent Class Reference

The QKeyEvent class contains describes a key event. More...

    #include <QKeyEvent>

Inherits QInputEvent.

- List of all members, including inherited members
- Compatibility members

### Public Functions

- QKeyEvent ( Type type, int key, int state, const QString & text = QString::null, bool autorep = FALSE, ushort count = 1 )
- int count () const
- bool isAutoRepeat () const
- int key () const
- Qt::ButtonState state () const
- Qt::ButtonState stateAfter () const
- QString text () const

- 3 public functions inherited from QInputEvent
- 2 public functions inherited from QEvent

## Detailed Description

The QKeyEvent class contains describes a key event.

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. You should call ignore() if the key press or release event is not handled by your widget. A key event is propagated up the parent widget chain until a widget accepts it with accept() or an event filter consumes it. Key events for multimedia keys are ignored by default. You should call accept() if your widget handles those events.

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

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

See also QFocusEvent and QWidget::grabKeyboard().

## Member Function Documentation

### QKeyEvent::QKeyEvent ( Type type, int key, int state, const QString & text = QString::null, bool autorep = FALSE, ushort count = 1 )

Constructs a key event object.

The type parameter must be `QEvent::KeyPress` or `QEvent::KeyRelease`. 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 state 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.

### int QKeyEvent::count () const

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

See also Qt::WA_KeyCompression.

### bool QKeyEvent::isAutoRepeat () const

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.

### int QKeyEvent::key () const

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

See Qt::Key for the list of keyboard codes. These codes are independent of the underlying window system.

A value of either 0 or Qt::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 Qt::WA_KeyCompression.

### Qt::ButtonState QKeyEvent::state () const

Returns the keyboard modifier flags that existed immediately before the event occurred.

The returned value is a selection of the following values, combined using the OR operator: `Qt::ShiftButton`, `Qt::ControlButton`, `Qt::AltButton`, and `Qt::MetaButton`.

See also stateAfter().

### Qt::ButtonState QKeyEvent::stateAfter () const

Returns the keyboard modifier flags that existed immediately after the event occurred.

Warning: This function cannot be trusted.

See also state().

### QString QKeyEvent::text () const

Returns the Unicode text that this key generated. The text returned can be a null string (text().isNull == true) in cases where modifier keys, such as Shift, Control, Alt, and Meta, are being pressed or released. In such cases key() will contain a valid value.

See also Qt::WA_KeyCompression.