comment ajouter un menu dynamique dans Qt

Je veux ajouter, sous-menu à un élément de menu de façon dynamique. Comment puis-je arriver à cela?

J'ai essayé comme ceci,
J'ai créé une Action et le sous-menu. Puis j'ai ajouté le sous-menu à l'action.
Mais, j'ai branché les “déclenché” le signal de l'action. de se planter si je clique sur l'action..

J'ai également géré la “aboutToShow” signal de menu, de même aussi se bloquer lorsque je clique sur l'action..

Ici est le sampe code.

Submenu = new QMenu(this);      
connect(Submenu, SIGNAL( aboutToShow()), this, SLOT(move ()));

                  QAction *test = new QAction(tr("Selection"), this);
                  test ->setMenu(Submenu);

                 menubar()->addAction(test);

Je veux obtenir la notification, avant l'affichage du sous-menu..

informations complémentaires:

moyens essayer ce code, dans votre fenêtre principale de constructeur.

QAction *action = new QAction("Test",this);
QAction *dummyaction = new QAction("Testing",this);
QMenu *menu = new QMenu();
menu->addAction(dummyaction);

bool val= connect(menu, SIGNAL( aboutToShow()), this, SLOT( Move()));
val= connect(menu, SIGNAL( aboutToHide()), this, SLOT(Move()));

action->setMenu(menu);
this->menuBar()->addAction(action);

si je fais comme ça, je suis capable de voir un élément de sous-menu. Mais avant cela, Déplacer la fente devrait appeler, il n'est pas appelé.. et avant même de le cacher aussi le même logement doit appeler.. sa ne vient pas..

J'ai essayé les valeurs de retour de connecter.. c'est vrai que... alors quel est le problème avec mon code.. s'il vous plaît dire..

OriginalL'auteur Naruto | 2010-05-06