![]() | Génération du source |
| Précédent | Création de l'application | Suivant |
Dans ce tutoriel, nous utilisons l'outil de sous classe de KDevelop dans le gestionnaire Automake. Si votre version de KDevelop ne le permet pas, reportez vous au Chapitre 7. Générer la source (autre solution) où cette étape est détaillée sans cet outil.
Nous avons commencé avec un projet KDE simple SigCreate et sigcreatedlg.ui ajouté à ce projet. Dans le gestionnaire Automake, section sigcreate (programme binaire), vous avez trois fichiers : sigcreatedlg.ui, sigcreate.cpp et main.cpp. On compile le projet (dans KDevelop : Projet -> Construire le projet) et le résultat doit être la fenêtre principale comme la figure 3 (creating.html). Votre formulaire n'apparaît pas encore car il n'est pas intégré dans le code de votre projet SigCreate. C'est ce que nous allons faire en sous-classant le formulaire avec la classe SigCreate (c'est à dire que la classe SigCreate va hériter de notre formulaire).
Etant donné que la classe sigcreate n'est pas utilisée en tant que telle, nous allons la supprimer et l'utiliser pour sous-classer le fichier sigcreatedlg.ui. Dans le gestionnaire Automake, faites un clic droit sur sigcreate.cpp et sélectionnez Supprimer pour afficher une fenêtre. Vérifiez que "Supprimer aussi la ressource du disque" soit coché. Répétez l'opération pour sigcreate.h (gestionnaire automake -> en-tête dans noinst -> click droit sur sigcreate.h -> supprimer). Ceci permet de supprimer les fichiers obsolètes du projet et de mettre à jour le fichier Makefile.am. Pensez à exécuter automake et configure avant de compiler à nouveau votre projet. Nous ne le ferons pas ici car nous allons encore apporter des modifications. Nous allons maintenant utiliser la classe SigCreate pour la sous-classe.
Dans le gestionnaire Automake, faites un clic droit sur sigcreatedlg.ui de sigcreate (programme binaire) et choisissez 'Sous-classe pour le "widget"...' dans le menu contextuel qui s'affiche. Un dialogue apparaît, indiquez le nom de la classe SigCreate. Le nom de la classe s'affiche automatiquement : 'sigcreate'. Vérifiez les informations : Reformater la source et cliquez sur OK. Répondez OK pour 'Ajouter les fichers à ma cible active'.

Nous devons supprimer des lignes dans main.cpp étant donné que le modèle du projet KDE simple fait référence à KMainWindow qui est généralement la classe de base utilisée. Dans notre cas, SigCreate s'appuie sur QWidget. Vous devez supprimer toutes les lignes entre KApplication app; et return app.exec(); sauf celle que je conserve ici :
SigCreate *mainWin = 0;
mainWin = new SigCreate();
app.setMainWidget( mainWin );
mainWin->show();
| Précédent | Sommaire | Suivant |
| Les signaux et les slots | Niveau supérieur | Implementer le slot |