gpt4 book ai didi

c++ - 如何在 Qt 中捕获 Ctrl+Plus?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:11:28 26 4
gpt4 key购买 nike

如何在 QWidget::keyPressEvent 中捕获 Ctrl++

这是我当前的代码(已简化):

void foo::keyPressEvent(QKeyEvent *event)
{
if (event->modifiers() == Qt::ControlModifier)
{
switch (event->key())
{
case Qt::Key_Plus:
// do something
break;
}
}
}

有效,但仅适用于键盘字母数字部分的 +。当我在数字键盘上按 Ctrl++ 时,它没有执行任何操作。

谢谢

最佳答案

经过一些调试后,我发现当按下数字键盘上的某个键时,Qt::KeypadModifier 被添加到事件修饰符中。所以简单的解决方案是将其添加到 if 语句中:

if (event->modifiers() == (Qt::ControlModifier | Qt::KeypadModifiers))
{
// ...

关于c++ - 如何在 Qt 中捕获 Ctrl+Plus?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40691389/

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