如何连接动态创建的操作

时间:2013-09-18 19:59:18

标签: c++ qt

在回答In Qt 4.7, how can a pop-up menu be added to a QToolbar button?之后我可以动态创建菜单,但是如何以我识别使用哪个菜单的方式连接这些菜单?

如果我在循环中创建这些菜单,我必须将它们全部连接到相同的插槽

例如,当我有一个按钮并为其创建菜单时:

button
-menu 1
-menu 2

使用与此类似的代码

    int r=0;
    while (r<2)
    {
        QAction *action = new QAction("menu " + QString::number(r), this);
        Menus->addAction(action);
        // here I could use connect in order to connect this menu to a certain slot
        // but that would make all of them trigger the same function
        r++;
    }
    ui->Button->setMenu(Menus);

如何识别我激活的菜单是菜单1还是菜单2?是否可以创建一个具有指向发送方对象的指针的插槽,以便我可以读取文本?

0 个答案:

没有答案