有没有使用中间QAction组访问QAction :: data()的方法?

时间:2013-01-20 09:21:04

标签: qt menu

当创建动态菜单时,我经常需要相关信号来响应特定索引值(例如,与该菜单项相关联的数据库行标识符)。要做到这一点,我似乎需要使用下面的代码,这感觉就像一个黑客。

QActionGroup *oneOffgroup = new QActionGroup(menu);
QAction *action = new QAction(tr("New text form..."),menu);
action->setData( writingSystem.id() );
oneOffgroup->addAction(action);
connect( oneOffgroup, SIGNAL(triggered(QAction*)), this, SLOT(newTextForm(QAction*)) );
submenu->addAction(action);

This answer建议使用QMenu :: triggered(QAction *)信号。这只是意味着我必须整理发送到该菜单的每个信号。 (在某些情况下,这可能没问题,但不是我目前正在进行的工作。)

0 个答案:

没有答案