因此,在我的应用程序中,我正在检查用户是否按了什么键。 不希望用户能够按住空格键,而空格键又会创建多个对象。 我希望用户必须能够在创建对象之前释放空格键。 我以前使用的是keyPressEvent,然后尝试了->我以为可以,但是没有用

void MyItem::keyReleaseEvent(QKeyEvent *event)


 if(event->key()== Qt::Key_Space){

           //create object and display

 }

任何人都可以向我指出正确的方向,以确保用户必须抬起手指的键盘,谢谢

#1楼 票数:1

也许:

void MainWindow::keyReleaseEvent(QKeyEvent *event)
{
    if((event->key() == Qt::Key_Space)&&(!event->isAutoRepeat()))
    {
       //create object and display
    }
}

  ask by hat_to_the_back translate from so

未解决问题?本站智能推荐:

2回复

编辑QTreeWidgetItem时捕获ESC键按下事件

我正在Qt开发一个项目。 我有一个QTreeWidget(filesTreeWidget),带有一些文件名和一个用于创建文件的按钮。 “创建”按钮向filesTreeWidget添加一个新项目(项目的文本为“”),编辑该项目以选择名称。 当我按ENTER键时,文件名通过套接字发送到服务器。
4回复

如何使用QPlainTextEdit处理按键事件

我已经用QT开发了大约一个星期了,我很高兴地说我正在快速地接受它。 我是一名中级C ++程序员,但挑选QT的某些部分证明是具有挑战性的。 当用户按下Enter键时,我需要处理来自QPlainTextEdit的按键事件,我认为该解决方案将涉及对窗口小部件进行子类化。 你们这些聪明人能给我一个
1回复

如何在按下按钮时阻碍短暂的等待时间?

我制作了一个使用QKeyPressEvent移动QGraphicsPixmapItem的程序(我正在使用ASDW移动该项目),而我的问题是当我按下按钮而不释放我的项目时,它无法平稳移动。 就像在不释放按钮的情况下编写AAAAAAAAAAAAAAA一样。 它先移动一点,然后等待更长的时间,然后
1回复

有没有一种方法可以模拟C ++中的按键,而没有软件可以告诉我我实际上并没有按下按键。

我尝试了SendInput和keybd_event,有时它们可​​以正常工作,但是某些正在运行的程序无法识别我想使用C ++代码按下键。 c ++中是否有信号与我机械按下键时发出的信号相同(因此没有程序可以分辨出差异)? 还是如果用C ++无法实现,是否可以用其他任何编程语言来实现?
1回复

按下特定键时快速按下此键。 如何防止触发键被按下? (c++)

如果标题不清楚,我很抱歉..但是我不知道如何缩短内容:c 如果按下/发送键“U”,下面的(提取)代码应该快速按下/发送键“A” . 但是如果我按“U”,它会先发送“U”,然后是几个“A”。 我怎样才能做到根本不发送密钥“U”? 我尝试了不同的东西,但我无法让它工作......我认为问题出在 if-c
1回复

SDL按键

我有这段代码: 为了管理我正在写的游戏的按键。 (顺便说一下,我跟随懒惰foo的第8个啧啧) 问题是编译器抱怨SLDK_UP , SLDK_DOWN等等。 它声明它们未在此范围内声明。 有什么建议么?
1回复

C ++区分按键与按键释放

我目前正在循环时通过getch()监听键盘输入,并且一切正常。 但是,如果我按住左键并向上按,则向左移动将停止,直到再次按下它为止。 我想解决此问题的唯一方法是需要知道某个键是否已被持有/何时被释放。 我正在使用ncurses,据说它具有此功能,但是通过所有搜索,我没有发现任何有用的东西。
1回复

SDL2并测量按键的时间

我编写了以下(典型)代码片段来处理SDL2中的关键事件: 我正在尝试找出一种方法来测量buttons[Back].pressed设置为true的时间之间的时间(即使在按住键的同时,我也只关注“保持”的确切开始时间) )然后为false 。 “密钥释放”部分很容易,因为无论如何这都是一个