- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想在点击动态创建的QAction时执行带参数的插槽,但是在QMenu中创建QAction时无法添加我的变量,默认的triggered()
插槽无法传递。
更清楚地说,我想实现这样的事情:
connect(someAction, SIGNAL( triggered(MyClass*) ), this, SLOT( execute(MyClass*) );
我怎样才能得到这个?我尝试创建自定义 QAction,但我不知道如何将它添加到 QMenu - 没有像 addAction(QAction)
这样的函数。
最佳答案
您可以使用 QAction::setData()
函数将参数作为 QVariant
存储在操作本身中。例如:
QVariant v = qVariantFromValue((void *) yourClassObjPointer);
action->setData(v);
在插槽中,您必须像这样提取指针:
void execute()
{
QAction *act = qobject_cast<QAction *>(sender());
QVariant v = act->data();
YourClass yourPointer = (YourClass *) v.value<void *>();
}
关于c++ - 带有自定义参数的 QAction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28646914/
当我尝试返回值时,我在 smtdplugin 实现文件中遇到了这个错误。好的,我知道我正在创建一个指向 QAction 的指针,当我尝试返回它时,我不能这样做,因为我的方法正在等待对对象的引用。但我不
我刚刚安装了 Mac OS X 10.8.3 和 Qt Creator 3、XCode 和 XCode 命令行工具。我正在尝试编译一个在另一台计算机上运行的项目,但每次我去“全部构建”时,我都会得到
将 QAction* 添加到 QMenu 时,谁负责删除 QAction* 对象?我在 QMenu 或 QAction 的文档中找不到提到的内容。 void MyClass::contextMenuE
我正在开发一个使用语音来模拟某些操作的应用程序:拖放、选择项目、单击按钮等。现在我有一个需要模拟单击或触发的菜单。 for linktype in globals.linkTypes.keys():
我在 QGraphicsView 子类中创建了 QAction 的实例,并将它连接到我在同一个类中的插槽。 QAction *action = new QAction(tr("New"), thi
我正在运行 osx mountain lion (10.8.3),当我运行下面链接中的代码时,我有一个只有一个操作的菜单... https://gist.github.com/Supm4n/8c705
我正在尝试使用 Qt 制作 IHM,我首先制作了一个基本菜单(文件、编辑...)。到目前为止,我的菜单包含"file",然后显示“新建项目、打开项目、退出”。看起来不错,但我的问题是我似乎无法触发这些
我使用 Qt Designer 创建了一个工具,其中有 3 个 QLineEdits,适用于 translateX、translateY 和 translateZ。对于每个 QLineEdit,我创建
我制作了一个带有 QAction 的菜单栏,它被设置为可检查 self.display_features_action = QtGui.QAction("Show Features", parent)
我想在点击动态创建的QAction时执行带参数的插槽,但是在QMenu中创建QAction时无法添加我的变量,默认的triggered()插槽无法传递。 更清楚地说,我想实现这样的事情: connec
我在菜单项上有一个 Qaction,用于删除我的一个 View 中的选定项。这是我创建 Action 的方式: deleteAct = new QAction( tr("Delete Selected
我在 Visual Studio 中使用 Qt。我想在我的应用程序的 menuBar 中添加 Icons。这是我到目前为止所拥有的: QToolBar *View3DToolBar; QAction
我在 Qt 中创建了一个上下文菜单,我需要菜单中的项目以选中/未选中的方式工作,以便每次点击相应项目时切换。如何将此功能添加到 QAction 中,如下所示? 最佳答案 这是手册中的相关部分。 che
我正在开发GIS软件QGIS的插件。我有一个QAction图标,选中后,只要切换其可见性,就会将组中的图层连接到函数。然后,当未选中它时,它应该断开这些功能,但我收到一个错误: Traceback (
在我的项目中,我显示了一个带有多个 QAction 对象的 QMenu。我希望 QAction 图标在用户将鼠标悬停在其上时发生变化。 这是我当前的代码: QPixmap icons(":/icons
我有一个工具栏或者有几个 QAction。我想在选择 QAction 时更改它的颜色,以便用户可以看到所选的操作。 问题是 QAction 不是 QWidget,所以我们不能使用样式表。有没有办法解决
我有一个 QActions 列表,一些被添加到顶级菜单,一些被添加到顶级子菜单。 有没有办法知道每个 Action 的父菜单名称? QAction *act; 我正在尝试 act->parentWid
Qt 中的大多数类都有默认构造函数。许多类采用 QObject* 或 QWidget* 作为构造函数参数,默认值为 nullptr。 QAction 类也有这样一个以QObject* 为参数的构造函数
我需要使用 qt、c++、qtest(在 eclipse 中)自动化 gui 测试我有一个动态创建的菜单,其中包含动态创建的 QAction,我需要从中测试一个“新选项卡”QAction(在菜单内),
现有代码在 QToolbar 中实现了一些 QAction,如图所示。目的是让选中的Qaction的图标闪烁。 因此,根据 Wizard_Step - 一个类成员 - 每次调用此计时器处理程序时,专用
我是一名优秀的程序员,十分优秀!