Slots d'un widget : 'no such signal'
bonjour,
j'ai installé QT depuis les dépôts officiels ubuntu, en mai dernier. La version de QTcreator est fixée à 3.5.1, mais donne bien accès aux fonctionnalités de QT5 , et aux objets widget correspondants, correction tardive après résolution du post:
non, quoique QTCreator 3.5.1 soit, je suppose, adapté à traiter les fonctionnalités de QT5, tel que c'est installé chez moi, il donne accès exclusivement aux fonctionnalités QT4 - ce qui est déjà pas si mal pour cet EDI très complet....
si j'en crois le 'à-propos' de l'aide de creator: ça affiche "QTCreator 3.5.1. Basé sur Qt 5.5.1 (GCC 5.2.1 20151129, 64 bit)
Depuis Creator, on peut seulement accéder à l'environnement desktop (ça me suffit) et créer des applications "qt avec widget" et "console'.
J'ai mis un certain temps à me familiariser avec ..... et actuellement j'ai une "appli avec widget" constituée d'une fenêtre principale + des widgets enfants dedans, et une appli perso tournant dans un thread séparé.
Donc liens entre les 2 par signals et slots.
j'utilise toujours la syntaxe
Code:
connect(&Objet1,SIGNAL (unsignal(...)),&Objet2, SLOT (unslot(...));
la plupart des connect sont écrits dans le constructeur de la fenêtre .
Que le signal soit déclaré et émis par une fonction tournant dans le thread séparé (tournant dans mainwindow.cpp pour la boucle principale, ou dans les autres .cpp)
ou que le signal soit émis par un QPushbutton de la mainwindow, (donc un signal pré-défini et trouvé dans la doc QTAssistant).....
ça communique bien avec le slot (d'un autre widget, ou fonction d'un objet déclaré dans mon code)
Le problème: les signaux censés être émis par le widget QListWidget donnent en exécution le message:
Code:
connect(ui->Parametres_listWidget,SIGNAL( (itemClicked ( QListWidgetItem )) ,&the_editParams,SLOT(getclickedlineParam(QListWidgetItem)));
retour d'exécution:
Citation:
Object::connect: No such signal QListWidget::itemClicked ( QListWidgetItem ) in ../ebauche-0/mainwindow.cpp:57
Object::connect: (sender name: 'Parametres_listWidget')
J'ai essayé tous les signals de cette damnée QListwidget, aucun de ceux qui renvoient un ListWidgetitem n'est reconnu!.
rem: dans le fichier usr/lib/qt4/qt/ qlistwidget.h il y a bien un:
Code:
1 2 3
| Q_SIGNALS:
void itemPressed(QListWidgetItem *item);
void itemClicked(QListWidgetItem *item); |
pas d'incohérence entre la doc et les en-tête, je n'ai pas inventé le signal....
Avez-vous une piste?
merci d'avance