gpt4 book ai didi

c++ - 自定义快捷方式的上下文菜单

转载 作者:行者123 更新时间:2023-11-30 05:26:55 25 4
gpt4 key购买 nike

我的 MainWindow 中有一个 QGraphicsView 并且在我的 Canvas 上有一个自定义的“抓取”功能(这是我的 MainWindow 中的 QGraphicsView )当我同时按下两个时调用鼠标按钮。

所以我只想在按下 CTRL + 右键单击​​时激活我的上下文菜单,并防止仅通过右键单击激活。保持 ActionsContextMenu 策略很重要。

有办法吗?

最佳答案

只需检查 KeyboardModifier .您可以指定所需的修饰符。在您的例子中,它是 ControlModifier。然后,覆盖方法 mousePressEvent() :

void yourClass::mousePressEvent(QMouseEvent *event)
{
if (event->button() == Qt::RightButton &&
event->modifiers() == Qt::ControlModifier)
{
// call your context menu
}
}

如果你想使用它,你需要调用一个QMenu。只需在您的类(class)中添加此功能即可:

void yourClass::showMenu()
{
QMenu contextMenu(this);

QAction action("My Action", this);
contextMenu.addAction(&action);

contextMenu.exec();
}

关于c++ - 自定义快捷方式的上下文菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37569627/

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