Bonjours à tous
Débutant en Qt et C++ je m'affronte à un problème de hiérarchie.
Je m'explique :
J'ai une classe parent (issue d'un QMainWindow) qui possède un 'public slot'
la classe :
le slot :
Code : Sélectionner tout - Visualiser dans une fenêtre à part class FenetreAppli : public QMainWindow
qui se déclenche sur un item de menu (vous l'aurez compris, le but est de renommer un fichier,
Code : Sélectionner tout - Visualiser dans une fenêtre à part void renameFile(QString leRep="", QString oldName="", QString newName="");
dont on passe le nom du dossier ainsi que l'ancien et nouveau nom, ou qui les demande s'ils ne sont pas transmis).
Je créé un enfantdont le constructeur est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part class Editeur : public QWidgetcréé par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Editeur(QWidget *parent, QString nomRubDir);
(à savoir que m_zoneCentrale est un QMdiArea et nomRuban un éventuel nom de fichier).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Editeur *fenEdit = new Editeur(m_zoneCentrale, nomRuban); QMdiSubWindow *sousFenetre1 = m_zoneCentrale->addSubWindow(fenEdit); sousFenetre1->show();
qui possède unj'aimerais appeler le slot "renameFile" depuis le slot editRub() de ma classe 'Editeur'
Code : Sélectionner tout - Visualiser dans une fenêtre à part QObject::connect(rubanEditer, SIGNAL(triggered()), this, SLOT(editRub()));
Hors 'Editeur' ne connait pas ce slot, même avec unPouvez-vous m'aider pour appeler un slot (ou même une méthode 'public') depuis une classe enfant ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part parent->renameFile(m_nomRep,m_nomRuban,nomRuban);
Merci d'avance
Philippe
Partager