Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Qt] [Exercice de M@teo21] [Mac]QFont et QIcon non activés

Après la séparation du code dans les fichiers MaFenetre.h et .cpp

Sujet résolu
    20 mars 2008 à 16:06:16

    Bonjour à tous !

    Je suis en train de suivre la suite du cours C++ avec Qt..
    J'ai déjà eu des problèmes au niveau de la compilation sous mac, mais la recherche me fut utile pour trouver la solution, dommage quand même que M@teo21 n'en ait pas parlé dans son tuto.

    Là j'ai créé les fichiers MaFenetre.h et MaFenetre.cpp .. ça compile très bien, mais... quand je lance Qt.app, je ne vois ni le smiley, ni la présentation du texte. Pourquoi ?

    main.cpp :
    1. #include <QApplication>
    2. #include "MaFenetre.h"
    3. int main(int argc, char *argv[])
    4. {
    5.     QApplication app(argc, argv);
    6.     MaFenetre fenetre;
    7.     fenetre.show();
    8.     return app.exec();
    9. }


    MaFenetre.h :
    1. #ifndef DEF_MAFENETRE
    2. #define DEF_MAFENETRE
    3. #include <QApplication>
    4. #include <QWidget>
    5. #include <QPushButton>
    6. class MaFenetre : public QWidget // On hérite de QWidget (IMPORTANT)
    7. {  
    8.     public:
    9.     MaFenetre();
    10.     private:
    11.     QPushButton *m_bouton;
    12. };
    13. #endif


    MaFenetre.cpp :
    1. #include "MaFenetre.h"
    2. MaFenetre::MaFenetre() : QWidget()
    3. {
    4.     setFixedSize(300, 150);
    5.      // Construction du bouton
    6.     m_bouton = new QPushButton("Pimp mon bouton !", this);
    7.     m_bouton->setFont(QFont("Comic Sans MS", 14));
    8.     m_bouton->setCursor(Qt::PointingHandCursor);
    9.     m_bouton->setIcon(QIcon("smiley.png"));
    10.     m_bouton->move(60, 50);
    11. }



    Résultat :
    Image utilisateur

    Bien sur, avant de séparer le code dans les nouveaux fichiers MaFenetre.h et MaFenetre.cpp, quand tout était dans le main.cpp, je voyais bien le smiley etc. Et quand j'ai rajouté les nouveaux fichiers, je n'ai pas oublié de refaire qmake -project et qmake -spec macx-g++ comme il fallait le faire sous mac.

    Si vous avez une idée (comme par exemple que j'ai fait une erreur dans le code, pas capable de savoir copier coller comme il faut :lol: ), je vous en serais très reconnaissant, car là c'est mystère et boule de neige :p

    Merci beaucoup pour votre aide :D
    • Partager sur Facebook
    • Partager sur Twitter
      20 mars 2008 à 16:11:14

      je ne sais pas si c'est la meme chose sous mac et sous windows mais en tout cas il faut vérifier que l'image smiley.png se trouve bien dans le dossier release. j'espère que ca t'aide ;)
      • Partager sur Facebook
      • Partager sur Twitter
        20 mars 2008 à 16:19:20

        Etrange, je suis sur mac, je n'ai pas eu de problème. o_O
        En copiant ton code et en faisant qmake -project, qmake et en compilant, j'ai bien l'icone qui s'affiche.
        Comme l'as dit tassou452, vérifie que ton image est valide et bien au bon emplacement dans ton dossier, si tes Fenetre.cpp (h) sont au même niveau que main.cpp.



        • Partager sur Facebook
        • Partager sur Twitter
          20 mars 2008 à 16:29:12

          Ben oui tout est dans le même dossier, et quand j'avais juste le main.cpp, tout marchait très bien..

          o_O je comprend plus rien lol


          Edit:
          Erf désolé tout le monde, c'est de ma faute : mon image s'appellait smile.png et non smiley.png... quand au font il marche très bien, c'est juste la petite taille qui ne montrait pas beaucoup de différence, j'ai donc augmenté la taille et vu la différence.

          Sujet résolu, encore désolé :/
          • Partager sur Facebook
          • Partager sur Twitter

          [Qt] [Exercice de M@teo21] [Mac]QFont et QIcon non activés

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown