Salut,

je travail avec une liste de 10 QAction, utilisé en tant qu'item d'un menu du systeme tray.
j'ai créé une liste de 10 QString, chacun va etre modifié pendant l'utilisation de l'application

et tout ca x9, ca fait 9 listes de 10 actions, et 9 listes de 10 string.

en fait les strings sont des url lu dans un fichier xml, durant l'utilisation de l'application, le xml va changer et les listes de string vont se réactualisé.

mon but est que lorsque je clic sur un item, j'ouvre une page web du lien contenu dans l'xml.

je bloque sur le connect :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
for(int i =0; i<10; i++){
        connect(articlesALaUne[i], SIGNAL(triggered()), this, SLOT(openUrl(i,AppEnums::ArticleTypeALaUne)));
    }
 
 
 
void Window::openUrl(int i, AppEnums e){
    QString urlTarget;
    if(e==AppEnums::ArticleTypeALaUne) urlTarget=AppVars::alauneShortcuts[i];
    else if(e==AppEnums::ArticleTypeMonde) urlTarget=AppVars::mondeShortcuts[i];
    else if(e==AppEnums::ArticleTypePolitique) urlTarget=AppVars::politiqueShortcuts[i];
    else if(e==AppEnums::ArticleTypeSocSant) urlTarget=AppVars::socsantShortcuts[i];
    else if(e==AppEnums::ArticleTypeEco) urlTarget=AppVars::ecoShortcuts[i];
    else if(e==AppEnums::ArticleTypeScience) urlTarget=AppVars::scienceShortcuts[i];
    else if(e==AppEnums::ArticleTypeArt) urlTarget=AppVars::artShortcuts[i];
    else if(e==AppEnums::ArticleTypeSport) urlTarget=AppVars::sportShortcuts[i];
    else if(e==AppEnums::ArticleTypePeople) urlTarget=AppVars::peopleShortcuts[i];
 
    QDesktopServices::openUrl(QUrl(urlTarget));
}
articlesALaUne est la première des 9 liste de QAction
AppVars::alauneShortcuts est la première des listes des QString

j'ai seulement écrit la boucle for de la première liste

AppEnums est une enum class

void openUrl(int i, AppEnums e); a été écrit en tant que public slot dans le .hpp

si vous avez besoin d'autre détail, je suis assez réactif

l'erreur : pas de problème à la compilation, à l'execution j'ai 10 fois le message :QObject::connect: No such slot Window::openUrl(i,AppEnums::ArticleTypeALaUne)
et bien sur l'ouverture de page web ne fonctionne pas.

quelqu'un aurait une solution?