返回介绍

QKeyEvent Class

发布于 2019-10-04 15:00:53 字数 5262 浏览 918 评论 0 收藏 0

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

#include <qevent.h>

Inherits QEvent.

List of all member functions.

Public Members

  • QKeyEvent ( Typetype, intkey, intascii, intstate, constQString&text = QString::null, boolautorep = FALSE, ushortcount = 1 )
  • int key () const
  • int ascii () const
  • ButtonState state () const
  • ButtonState stateAfter () const
  • bool isAccepted () const
  • QString text () const
  • bool isAutoRepeat () const
  • int count () const
  • void accept ()
  • void ignore ()

Detailed Description

The QKeyEvent class contains describes a key event.

Key events occur when a key is pressed or released when a widget has keyboard input focus.

A key event contains a special accept flag that indicates whether the receiver wants the key event. You should call QKeyEvent::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 QKeyEvent::accept() or an event filter consumes it.

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, QWidget::grabKeyboard() and Event Classes.


Member Function Documentation

QKeyEvent::QKeyEvent ( Typetype, intkey, intascii, intstate, constQString&text = QString::null, boolautorep = FALSE, ushortcount = 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 (e.g. it may be the result of a compose sequence or keyboard macro). ascii is the ASCII code of the key that was pressed or released. state holds the keyboard modifiers. text is the Unicode text that the key generated. If autorep is TRUE, isAutoRepeat() will be TRUE. count is the number of single keys.

The accept flag is set to TRUE.

void QKeyEvent::accept ()

Sets the accept flag of the key event object.

Setting the accept parameter indicates that the receiver of the event wants the key event. Unwanted key events are sent to the parent widget.

The accept flag is set by default.

See also ignore().

int QKeyEvent::ascii () const

Returns the ASCII code of the key that was pressed or released. We recommend using text() instead.

See also text().

Example: picture/picture.cpp.

int QKeyEvent::count () const

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

However, Qt also compresses invisible keycodes such as BackSpace. For those, count() returns the number of key presses/repeats this event represents.

See also QWidget::setKeyCompression().

void QKeyEvent::ignore ()

Clears the accept flag parameter of the key event object.

Clearing the accept parameter indicates that the event receiver does not want the key event. Unwanted key events are sent to the parent widget.

The accept flag is set by default.

See also accept().

bool QKeyEvent::isAccepted () const

Returns TRUE if the receiver of the event wants to keep the key; otherwise returns FALSE

bool QKeyEvent::isAutoRepeat () const

Returns TRUE if this event comes from an auto-repeating key and 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.

Key code 0 means that the event is not a result of a known key (e.g. it may be the result of a compose sequence or keyboard macro).

When key event compression is turned on, this function's return value is undefined. See QWidget::setKeyCompression() for details on key event compression.

Example: fileiconview/qfileiconview.cpp.

ButtonState QKeyEvent::state () const

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

The returned value is ShiftButton, ControlButton and AltButton OR'ed together.

See also stateAfter().

Example: fileiconview/qfileiconview.cpp.

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.

See also QWidget::setKeyCompression().

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文