Bienvenue sur le forum !

Si vous souhaitez rejoindre la communauté, cliquez sur l'un de ces boutons !

Qt 5 : 5.9.1 - Qt Creator : 4.4.0 - Qt Installer : 2.0.3 - JOM : 1.1.2 - Qt Build suite : 1.7.0 - VS Qt 5 : 2.0.0

qlabel

salut
j'essaye d'afficher une image dans un qlabel et changer le texte d'une bouton mais rien ne se passe quelq'un peut m'aider
merci d'avance
************************
#include
#include "Puissance4.h"

Puissance4::Puissance4(QWidget *parent) : QWidget(parent)
{
ui.setupUi(this);
ui.l28->setPixmap(QPixmap("rouge.jpg"));/l28 nom du qlable dans qtdesigner
ui.com->setText("Egal");//com nom du bouton



}
******************
#ifndef HEADER_PUISSANCE4
#define HEADER_PUISSANCE4

#include
#include "ui_puissance.h"

class Puissance4 : public QWidget
{
Q_OBJECT

public:
Puissance4(QWidget *parent = 0);

private slots:

private:
Ui::Puissance4 ui;

};


#endif
*************************

Réponses

  • Bonjour,

    Avec cette petite modif de ton .h, j'espère que ça ira mieux.
    #include <QtGui>
    #include "ui_puissance.h"

    class Puissance4 : public QWidget, public Ui_puissance //héritage de classe "graphique"
    {
    Q_OBJECT

    public:
    Puissance4(QWidget *parent = 0);

    private slots:

    private:
    Ui::Puissance4 ui;

    };
    #endif
    *************************
  • salut
    il m'a mentionné une erreur (error: expected class-name before '{' token)
    merci
  • là ça devrait aller mieux. J'avais un peu abrégé
    #ifndef HEADER_PUISSANCE4
    #define HEADER_PUISSANCE4

    #include <QtGui>
    #include "ui_puissance.h"

    class Puissance4 : public QWidget, public Ui_puissance //héritage de classe "graphique"
    {
    Q_OBJECT

    public:
    Puissance4(QWidget *parent = 0);

    private slots:

    private:
    Ui::Puissance4 ui;

    };
    #endif
    *************************
  • j'ai deja mis le ifnotdefined et la meme erreur
    merci
  • class Puissance4 : public QWidget, public Ui::NomdelaclassecrééedansQtDesigner //héritage de classe "graphique"
  • salut
    ni l'image est affiché dans le qlabel ni le texte dans le bouton
    merci
  • Quel est le type de ta fenêtre dans QDesigner : QDialog, QMainWindow ?
  • Bon sorry,
    Si tu saisis un texte pour ton bouton et ton label dans QDesigner, est-ce qu'il s'affiche quand tu lances ton programme ?
  • wi j'ai saisi texte commencer pour mon bouton et des images pour mes label s
    il les affiches sauf la première qlabel il n'affiche rien
  • il n'y a pas des personnes qui sont intéressé
  • Comment tu as créer ton widget?
    Car quand je fais un widget avec un .ui dans QtCreator je n'ai pas ce code exactement et je pense que c'est ça le problème.
    Avec ce code je n'ai pas de problème:
    #ifndef WIDGET_H
    #define WIDGET_H

    #include <QWidget>

    namespace Ui {
    class Widget;
    }

    class Widget : public QWidget {
    Q_OBJECT
    public:
    Widget(QWidget *parent = 0);
    ~Widget();

    protected:
    void changeEvent(QEvent *e);

    private:
    Ui::Widget *ui;
    };

    #endif // WIDGET_H
    #include "widget.h"
    #include "ui_widget.h"

    Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
    {
    ui->setupUi(this);

    ui->action->setText("Mon Texte");
    ui->nom->setText("Label");
    }

    Widget::~Widget()
    {
    delete ui;
    }

    void Widget::changeEvent(QEvent *e)
    {
    QWidget::changeEvent(e);
    switch (e->type()) {
    case QEvent::LanguageChange:
    ui->retranslateUi(this);
    break;
    default:
    break;
    }
    }
    Après si tu as un problème avec l'icône vérifie le chemin ou mieux créé un fichier de ressources.
  • Bonjour braindeadbzh,

    Voici le code que j'utilise pour ma part. Il a le bon goût de marcher mais il diffère un peu du tien. Je souhaiterais avoir ton avis; en effet c'est sur cette base que j'ai essayé de conseiller shadow et sans succès. J'ai utilisé QDesigner pour réaliser ma fenêtre qui comporte des QTabWidget, QTableWidget, QLabel, QGroupBox....
     pour le .h
    #ifndef MAINWINDOWIMPL_H
    #define MAINWINDOWIMPL_H

    #include <QMainWindow>
    #include "ui_mainwindow.h"

    class MainWindowImpl : public QMainWindow, public Ui::MainWindow
    {
    Q_OBJECT
    private:
    Ui::MainWindow ui;

    public:
    MainWindowImpl( QWidget * parent = 0, Qt::WFlags f = 0 );
    ~MainWindowImpl();

    et plus
    };

    #endif
    et pour le .cpp
    #include "mainwindowimpl.h"
    //

    MainWindowImpl::MainWindowImpl( QWidget * parent, Qt::WFlags f)
    : QMainWindow(parent, f)
    {
    ui.setupUi(this);

    }
  • December 2009 modifié
    Teofifil said:
    #ifndef MAINWINDOWIMPL_H
    #define MAINWINDOWIMPL_H

    #include <QMainWindow>
    #include "ui_mainwindow.h"

    class MainWindowImpl :
    public QMainWindow,
    public Ui::MainWindow // <<<<<<<<<<<<<<< **** 1
    {
    Q_OBJECT
    private:
    Ui::MainWindow ui; // <<<<<<<<<<<<<<< **** 2
    public:
    MainWindowImpl( QWidget * parent = 0, Qt::WFlags f = 0 );
    ~MainWindowImpl();
    // et plus
    };
    #endif
    Il faut choisir:
    soit le double héritage **** 1
    soit le simple héritage avec ui en variable membre **** 2
    mais de préférence éviter d'utiliser un mix des deux
  • merci pour vos réponse mais je vois ou réside le problème dans mon programme merci de m'éclaircir un peu
    *******
    #ifndef HEADER_PUISSANCE4
    #define HEADER_PUISSANCE4

    #include
    #include "ui_puissance.h"
    #include

    namespace Ui {
    class Puissance4;
    }

    class Puissance4 : public QWidget, public Ui::Puissance4
    {
    Q_OBJECT

    public:
    Puissance4(QWidget *parent = 0);

    private slots:

    private:
    Ui::Puissance4 ui;

    };


    #endif
    **************
    #include
    #include "Puissance4.h"

    Puissance4::Puissance4(QWidget *parent)

    {
    ui.setupUi(this); // A faire en premier
    ui.l28->setPixmap(QPixmap("rouge.jpg"));
    ui.com->setText("Egal");

    }
  • Nicolas SOUCHON said:
    Il faut choisir:
    soit le double héritage **** 1
    soit le simple héritage avec ui en variable membre **** 2
    mais de préférence éviter d'utiliser un mix des deux
    Merci d'avoir pointé du doigt cette ambiguïté que je n'avais pas relevé (ça marchait !!!). La gestion de l'héritage de la classe issue de QDesigner me posait quelques problèmes. Maintenant ça va un peu mieux.
Connectez-vous ou Inscrivez-vous pour répondre.