![]() | Générer la source (autre solution) |
| Précédent | Suivant |
Etape 1 - Assurez vous d'enregistrer votre formulaire avec le nom sigcreatedlg.ui et de fermer Qt Designer. Si vous ouvrez ce fichier avec votre éditeur préféré vous verrez qu'il ne s'agit pas de C++ mais de code XML. Un outil de ligne de commandes spécial appelé uic est fourni avec Qt Designer. Cette commande est utilisée pour convertir les fichiers .ui en .h et .cpp. Cette convertion est gérer automatiquement par KDevelop.
uic -o sigcreatedlg.h sigcreatedlg.ui uic -o sigcreatedlg.cpp -i sigcreatedlg.h sigcreatedlg.ui
Etape 2 - Vous devez maintenant rattahcer la classe que KDevelop vous a généré (SigCreate) depuis cette nouvelle fenêtre Qt Designer. Dans KDelevlop, visualiez le fichier sigcreate.h en le sélectionnant dans le Sélecteur de fichier et ajouter :
#include "sigcreatedlg.h"en haut du fichier, avec les en têtes dont vous avez besoin.
#include <kapplication.h>
#include <qwidget.h>
#include <qlineedit.h>
#include <qmultilineedit.h>
#include <qcombobox.h>
#include <sigcreatedlg.h>
/** SigCreate is the base class of the project */
class SigCreate : public SigCreateDlg
{
Remplacez public KMainWindow par public SigCreateDlg puisque SigCreate est rattaché à SigCreateDlg.
Vous devez avoir les lignes suivantes dans sigcreate.h :
class SigCreate : public SigCreateDlg {
Q_OBJECT
public:
/** constructor */
SigCreate(QWidget *parent=0, const char *name=0);
/** destructor */
~SigCreate();
};
Le fichier sigcreate.cpp doit ressembler à ça :
#include "sigcreate.h"
SigCreate::SigCreate(QWidget *parent, const char *name) : SigCreateDlg(parent, name)
{
}
SigCreate::~SigCreate()
{
}
Etape 3 - Il faut ajouter également les fichiers includes. Dans sigcreate.h, ajoutez les trois en têtes, un par classe :
#include <qlineedit.h> #include <qcombobox.h> #include <qmultilineedit.h>Etape 4 - Décommenter quelques lignes dans main.cpp :
/* if (app.isRestored())
{
RESTORE(SigCreate);
}
else*/
étant donné que le projet se base sur un modèle KMainWindow qui permet de faire pas mal de choses.
Vous pouvez exécuter le projet pour voir si tout va bien. Choisissez Construire -> Exécuter automake & friends, puis construire, exécuter configure, et Construire->Construire le projet et Construire-> Installer (ou Installer en tant que root) puis Construire -> Execute Program (ou le raccourci) F9). Notez que selon votre configuration, vous pourrez très bien faire Construire->Installer en tant que root au lieu de Construire-> Installer si l'utilisateur n'a pas les droits d'écriture du répertoire KDEDIR. Vous pouvez également passer l'étape d'installation, fonctionnant pour ce tutoriel, mais peut générer des problèmes sur un véritable programme. L'interface devrait apparaître, mais le bouton Créer ! ne fonctionne pas pour l'instant. On peut le rajouter en implémentant le slot slotCreateSig(). Voir la figure 19.
Si vous obtenez l'erreur suivante en compilant : Syntax error before `{' token" referring to the opening brace right /before/ the Q_OBJECT line in sigcreate.h, c'est que vous avez oublié de rajouter
#include "sigcreatedlg.h"ou le fichier sigcreatedlg.h n'est pas créé (voir note ci dessus).

| Précédent | Sommaire | Suivant |
| Liens utiles | Niveau supérieur | Implémenter les slots |