[Labo C++] Problème connect Slot Signal

Voir le sujet précédent Voir le sujet suivant Aller en bas

resolu [Labo C++] Problème connect Slot Signal

Message  jabberwok le Dim 11 Mar 2012, 19:31

Bonjour/Bonsoir,

J'ai un problème dans ma classe configuration.h, j'essaye de connecter le signal émis par mes 2 spinBoxs à 2 slots que j'ai créé, mais ça ne fonctionne pas, j'ai beau chercher je trouve pas, depuis le td2, j'ai toujours fait comme ça et ça a fonctionné à chaque fois...
Si quelqu'un a une idée, jsuis preneur, voilà mon code :

Dans configuration.h

Code:
private slots:
   void setLigne(int);
   void setColonne(int);

Dans configuration.c (constructeur)

Code:
QObject::connect(ui.spinBox, SIGNAL(valueChanged(int)), this, SLOT(setLigne(int)));
   QObject::connect(ui.spinBox_2, SIGNAL(valueChanged(int)), this, SLOT(setColonne(int)));


Merci d'avance, bonne journée/soirée !


Dernière édition par jabberwok le Lun 12 Mar 2012, 13:59, édité 1 fois

jabberwok

Nombre de messages : 90
Prénom : ali
Statut : Gediplomeerd =)
Date d'inscription : 27/09/2010

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  smb le Dim 11 Mar 2012, 23:24

Ajoute dans le fichier .pro de ton projet la ligne :

Code:

CONFIG += console
... et rebuild pour voir ce que ça raconte.

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  Dj x-fuse le Dim 11 Mar 2012, 23:34

Pourquoi ne pas faire le connect via l'UI ?

Dj x-fuse

Nombre de messages : 658
Age : 27
Prénom : Jonathan
Statut : 4ième sécu
Localisation : IRL
Date d'inscription : 18/10/2008

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  smb le Dim 11 Mar 2012, 23:52

Dj x-fuse a écrit:Pourquoi ne pas faire le connect via l'UI ?
A mon avis, ce n'est pas une réponse au problème !

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  galaeron le Lun 12 Mar 2012, 02:53

De mon expérience c'est souvent du à la non présence de la macro Q_Object en effet pour que les slots fonctionnent il faut que celle-ci soit présente.
Ta classe configuration dispose t'elle d'une macro Q_Object ou hérite t'elle de QWidget ou autre ? Si celle-ci hérite de QWidget par exemple assure toi qu'elle en hérite en premier car la macro (effectuée de manière implicite avec l'héritage) doit être la première instruction.

galaeron

Nombre de messages : 113
Age : 28
Prénom : Arthur
Statut : 3IR12
Date d'inscription : 29/06/2011

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  jabberwok le Lun 12 Mar 2012, 06:30

Smb : voilà ce que m'affiche
Code:
make debug
c:/Qt/4.7.3/bin/qmake.exe -o Makefile OthelloGui.pro
make -f Makefile.Debug
make[1]: Entering directory `/c/Users/jabberwok/workspace/OthelloGui'
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -o debug/configuration.o configuration.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -o debug/main.o main.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -o debug/othellogui.o othellogui.cpp
C:/Qt/4.7.3/bin/moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -D__GNUC__ -DWIN32 configuration.h -o debug/moc_configuration.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -o debug/moc_configuration.o debug/moc_configuration.cpp
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-subsystem,console -mthreads -Wl -o debug/OthelloGui.exe debug/Jeu.o debug/Joueur.o debug/Plateau.o debug/configuration.o debug/sujetDObservation.o debug/main.o debug/othellogui.o debug/moc_configuration.o debug/moc_othellogui.o  -L'c:/Qt/4.7.3/lib' -L./lib/ -lOthelloOutils -lQtGuid4 -lQtCored4
make[1]: Leaving directory `/c/Users/jabberwok/workspace/OthelloGui'

Dj-x-fusre : je ne le fait pas via l'UI, parce que mes slots n'apparaissent pas.

galaeron : Q_OBJECT est bien présent dans ma classe Configuration

jabberwok

Nombre de messages : 90
Prénom : ali
Statut : Gediplomeerd =)
Date d'inscription : 27/09/2010

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  Dj x-fuse le Lun 12 Mar 2012, 07:23

jabberwok a écrit:Dj-x-fusre : je ne le fait pas via l'UI, parce que mes slots n'apparaissent pas.
Ce qui est normal, tu dois les ajouter à la main (simplement par l'appel de la fonction, regarde le TD du pendu, c'est expliqué en détail Wink)

@smb : tout à fait d'accord, je n'apporte pas de solution, mais je serais curieux de savoir si via l'UI sa fonctionne. Dans les deux cas (fonctionne ou fonctionne pas), je serais aussi intéressé de savoir pourquoi Smile

Dj x-fuse

Nombre de messages : 658
Age : 27
Prénom : Jonathan
Statut : 4ième sécu
Localisation : IRL
Date d'inscription : 18/10/2008

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  smb le Lun 12 Mar 2012, 08:39

Je pourrais peut-être trouver si je disposais du projet !

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  nvs le Lun 12 Mar 2012, 11:36

jabberwok a écrit:Smb : voilà ce que m'affiche
Code:
make debug
c:/Qt/4.7.3/bin/qmake.exe -o Makefile OthelloGui.pro
make -f Makefile.Debug
make[1]: Entering directory `/c/Users/jabberwok/workspace/OthelloGui'
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -o debug/configuration.o configuration.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -o debug/main.o main.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -o debug/othellogui.o othellogui.cpp
C:/Qt/4.7.3/bin/moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -D__GNUC__ -DWIN32 configuration.h -o debug/moc_configuration.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../../../Qt/4.7.3/include/QtCore' -I'../../../../Qt/4.7.3/include/QtGui' -I'../../../../Qt/4.7.3/include' -I'../../../../Qt/4.7.3/include/ActiveQt' -I'debug' -I'.' -I'../../../../Qt/4.7.3/mkspecs/default' -o debug/moc_configuration.o debug/moc_configuration.cpp
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-subsystem,console -mthreads -Wl -o debug/OthelloGui.exe debug/Jeu.o debug/Joueur.o debug/Plateau.o debug/configuration.o debug/sujetDObservation.o debug/main.o debug/othellogui.o debug/moc_configuration.o debug/moc_othellogui.o  -L'c:/Qt/4.7.3/lib' -L./lib/ -lOthelloOutils -lQtGuid4 -lQtCored4
make[1]: Leaving directory `/c/Users/jabberwok/workspace/OthelloGui'
[...]
c'est surtout ce qui s'affiche dans la console lors de l'exécution qui est utile !

sinon, je parie également sur l'absence de Q_OBJECT







silent

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  jabberwok le Lun 12 Mar 2012, 13:13

smb : c'est envoyé !
Spoiler:
(smonbaliu[at]heb.be ?)

nvs :
Spoiler:
Code:
#ifndef CONFIGURATION_H
#define CONFIGURATION_H

#include <QtGui/QDialog>
#include "ui_configuration.h"

class Configuration : public QDialog
{
    Q_OBJECT

public:
    Configuration(QWidget *parent = 0);
    int getLigne() const;
    int getColonne() const;
    ~Configuration();

private slots:
   void setLigne(int);
   void setColonne(int);

private:
    Ui::ConfigurationClass ui;
    int ligne;
    int colonne;
};

#endif // CONFIGURATION_H

Il est bien là ^^

jabberwok

Nombre de messages : 90
Prénom : ali
Statut : Gediplomeerd =)
Date d'inscription : 27/09/2010

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  smb le Lun 12 Mar 2012, 13:50

C'est évidemment bien plus facile avec ton projet devant les yeux !

En fait qu'est-ce qui te fait croire que les connect de tes spin box ne fonctionnent pas ?
Pour moi, ils fonctionnent parfaitement !

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  jabberwok le Lun 12 Mar 2012, 13:58

Oo, jviens de ré-essayer et ça fonctionne.

En tout cas merci de m'avoir aider !

Bonne journée/soirée =)

jabberwok

Nombre de messages : 90
Prénom : ali
Statut : Gediplomeerd =)
Date d'inscription : 27/09/2010

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  nvs le Lun 12 Mar 2012, 13:58

smb a écrit:En fait qu'est-ce qui te fait croire que les connect de tes spin box ne fonctionnent pas ?
Pour moi, ils fonctionnent parfaitement !

cheers








rendeer

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  I.AM.BACK le Mar 20 Mar 2012, 19:50

une idée de comment tu as résolu le problème ?
j'ai la même chose pour les connect suivant:

Code:
connect(ui.actionNouveau,SIGNAL(triggered(bool)),this,SLOT(nouvellePartie()));
connect(ui.actionFermer,SIGNAL(triggered(bool)),this,SLOT(fermerPartie()));
connect(ui.actionTexte,SIGNAL(triggered(bool)),this,SLOT(observateurTexte(bool)));
connect(ui.actionExpert,SIGNAL(triggered(bool)),this,SLOT(observateurExpert(bool)));



RESOLU: je ne sais pas pk ?? j'ai quitté mon pc 20min, et quand je suis revenu j'ai recompilé pour voir...et ça a marché :/

I.AM.BACK

Nombre de messages : 56
Age : 25
Prénom : Victor
Statut : étudiant indu 2ème année
Localisation : http://en.wikipedia.org/wiki/Armenia
Date d'inscription : 21/07/2011

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  smb le Mar 20 Mar 2012, 21:39

C++ c'est magique, non ?

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  I.AM.BACK le Mar 20 Mar 2012, 22:11

Oui c'est magique, mais je ne suis pas sûr si la magie vient de C++ ou bien d'Eclipse

I.AM.BACK

Nombre de messages : 56
Age : 25
Prénom : Victor
Statut : étudiant indu 2ème année
Localisation : http://en.wikipedia.org/wiki/Armenia
Date d'inscription : 21/07/2011

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  Dj x-fuse le Mar 20 Mar 2012, 22:15

Probablement encore un coup de la Société Protectrice de la Belle Informatique... !





dérivons mes amis, dérivons... Razz

Dj x-fuse

Nombre de messages : 658
Age : 27
Prénom : Jonathan
Statut : 4ième sécu
Localisation : IRL
Date d'inscription : 18/10/2008

Revenir en haut Aller en bas

resolu Re: [Labo C++] Problème connect Slot Signal

Message  Contenu sponsorisé Aujourd'hui à 12:37


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum