< Programmation Qt

Introduction

Logo Il vaut mieux savoir coder avec Qt avant d'utiliser Qt Designer.

Qt designer est une série d'outils intégrés dans Qt Creator permettant de créer graphiquement des interfaces graphiques de l'application. Lors de la compilation elles seront automatiquement reconverties en c++ et donc utilisables comme des classes normales.

Utilisation

Qt Designer 4.3.4
Cette section est vide, pas assez détaillée ou incomplète.

Incorporation

Après avoir dessiné l'interface, enregistrez votre fichier (pour l'exemple ce sera widget.ui). Dans le fichier essais.pro, ajoutez la ligne :

 FORMS = widget.ui


Pour l'exploiter dans un programme il faudra créer une classe héritant du widget de cette manière :

mainwindow.h
Classe basique de fenêtre graphique
#include <QWidget>
#include "ui_widget.h"

class MainWindow : public QWidget, public Ui::Widget
{
public:
    MainWindow(QWidget *parent = 0);
};
mainwindow.cpp
Classe basique de fenêtre graphique
#include <QtGui>

MainWindow::MainWindow(QWidget *parent) : QWidget(parent)
{
    setupUi(this);
}


Présentation

Qt Designer est disponible en lançant Qt Creator depuis Menu démarrer > Tous les programmes > Qt SDK > Qt Creator (windows).

Code

L'exemple est une calculatrice à fabriquer sous Qt designer.

Le tableau ci-dessous liste les composants de la fenêtre :

Tableau
Widget Nom de l'objet

QSpinBox

nombre1

QComboBox

operation

QSpinBox

nombre2

QPushButton

boutonEgal

QLabel

resultat

.pro

Il faut modifier le fichier .pro :

######################################################################
# Automatically generated by qmake (2.01a) lun. 2. juin 12:00:20 2008
######################################################################

TEMPLATE = app
TARGET = 
DEPENDPATH += .
INCLUDEPATH += .

# Input
FORMS += calculatrice.ui
SOURCES += main.cpp

ATTENTION ! Il faut faire qmake, make pour lancer, et ne pas mettre qmake -project, sinon Qt régénérera un un fichier .pro normal.

main.cpp

voici le main.cpp:

#include <QApplication>
#include <QtGui>
#include "ui_calculatrice.h"

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    QWidget *fenetre = new QWidget;
    Ui::FenCalculatrice ui;
    ui.setupUi(fenetre);

    fenetre->show();

    return app.exec();
}

FenCalculatrice.cpp

#include "FenCalculatrice.h"

FenCalculatrice::FenCalculatrice(QWidget *parent) : QWidget(parent)
{
    ui.setupUi(this);

    connect(ui.boutonEgal, SIGNAL(clicked()), this, SLOT(calculerOperation()));
}

header files (.h)

FenCalculatrice.h

#ifndef HEADER_FENCALCULATRICE
#define HEADER_FENCALCULATRICE

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

class FenCalculatrice : public QWidget
{
    Q_OBJECT

    public:
        FenCalculatrice(QWidget *parent = 0);

    private slots:
        /* Insérez les prototypes de vos slots personnalisés ici */

    private:
        Ui::FenCalculatrice ui;
};


#endif

Liens externes

Cet article est issu de Wikibooks. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.