gpt4 book ai didi

qt - 如何捕捉 Ctrl 键释放?

转载 作者:行者123 更新时间:2023-12-02 04:41:26 25 4
gpt4 key购买 nike

我按下 Ctrl 键。我的第一个函数运行良好:

void MainWindow::keyPressEvent(QKeyEvent *event){
if(event->modifiers()==Qt::CTRL){ //RETURNS TRUE
ui->widget->groupmaking=true;
} }

第二个问题是,我无法检查发布了哪种 key 。 (这是 Ctrl)

void MainWindow::keyReleaseEvent(QKeyEvent *event){
if(event->modifiers()==Qt::CTRL){ //RETURNS FALSE. WHY?
ui->widget->groupmaking=false;
ui->widget->groupexist=true;
}
}

那么,如何正确捕捉Ctrl释放呢?

最佳答案

出现这种行为的原因是目前没有键修饰符,当你得到键释放事件时,因为 Ctrl 键已经被释放了。执行此类检查的正确方法是:

void keyReleaseEvent(QKeyEvent *event)
{
if(event->key() == Qt::Key_Control) {
[..]
}
}

关于qt - 如何捕捉 Ctrl 键释放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20746488/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com