IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Séparer la partie GUI du programme du reste

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 154
    Par défaut Séparer la partie GUI du programme du reste
    Bonsoir à tous,

    Je reviens vous sollicitez encore

    Toujours dans le projet de réalisé mon programme de pilotage du port // sous windows & linux ( le multi platforme viendra en dernier lieu ) j'aimerai savoir comment "organisé" mon programme :

    Pour le moment j'ai 3 fichier : un main, un fenetre.cpp, un header Mafenetre.h, rien de bien compliquer le projet avance lentement mais je veux qu'il avance proprement.

    Pour le moment j'ai fais une interface on ne peu plus basique composé de deux boutons qui sont connecté à leur slots respectifs ça fonctionne très bien je les ai même placé dans un layout comme ça c'est propre ( merci encore a tout ceux qui m'ont aidé ) .

    Cependant j'en viens à la deuxieme partie du programme à savoir le traitement des infos, ne voulant pas mélangé le traitement et le GUI j'aimerai savoir comment dois je procéder ; dois je refaire un fichier CPP + éventuellement un header ?

    Je veux que ca soit propre, lisible et dans les normes car j'aimerai ( si possible ) en faire un tuto pour débutant fait par un débutant

    Merci encore à vous !

  2. #2
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Tout d'abord, si tu comptes en faire un tuto, on serait très heureux de t'y aider et de voir pour le publier sur Developpez.com, afin d'aider un maximum de débutants

    Ensuite, un conseil : ne parle pas en termes d'en-têtes et de .cpp. Parle en termes de classes. Ce sont plus les classes que les fichiers qui entretiennent des relations dans ton code source

    Dans ton cas, je conseille souvent de faire une classe qui n'a rien à voir avec le GUI. La classe de la fenêtre aurait une instance de cette classe, ou bien cette classe aurait une instance de cette fenêtre (ou une référence/un pointeur bien sûr), et un signal de la classe de traitement d'infos dirait à la fenêtre "j'ai fini, tu peux afficher le résultat de mon traitement, je te le donne en argument" via un slot qui serait dans la fenêtre, connecté donc au signal de la classe de traitement.

    Après, si tu nous en disais plus sur ce que fait cette fameuse classe, on pourrait mieux t'aiguiller

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 154
    Par défaut
    En gros, je dois chargé une DLL avec Qlibrary cette Dll à deux fonction inp32(int,int) et out32(int,int) .

    La première valeur est un chiffre compris entre 0 et 255 ; 255 en binaire vaut 11111111 soit toutes les sorties à l'êtat haut . la seconde l'adresse du port LPT par défaut c'est 0x378 .

    D'un point de vu graphique il y aura pour chaque étapes 8 checkbox pour savoir quelle sortie activé et j'aimerai faire varier un entier suivant l'état des checkbox et ensuite envoyer le résultat des checkbox à la fonction out32.

    Ca c'est pour le projet final ( bien que je n'ai pas citer de nombreux éléments que j'inclurai petit à petit )

    Tu peux développer quand tu dis que ma classe de "traitement" aurait une instance sur celle du GUI ?

    Merci beaucoup

  4. #4
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    class MaFenetre : public QMainWindow
    {
    /* ... */ 
      MaClasseDeTraitement* mcdt;
      /* ... */
      public slots:
      /* ... */
      void slotAExecuterQuandTraitementFini(/* arguments éventuels */);
    }
    Etc.

    Je procèderai d'une façon de ce genre.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 154
    Par défaut
    Donc de cette facon les 2 classes pourront communiquer ?

  6. #6
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Oui, via les signaux/slots de Qt

    Attensd d'autres avis, m'enfin tu as ma vision.

Discussions similaires

  1. Programme qui reste en suspend
    Par Polychin-elle dans le forum Débuter
    Réponses: 7
    Dernier message: 07/04/2012, 03h04
  2. Réponses: 1
    Dernier message: 03/05/2008, 18h20
  3. interface avec GUI ou programmation
    Par miss_angel dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 20/02/2008, 10h33
  4. une partie d'un programme.
    Par naniate dans le forum C
    Réponses: 5
    Dernier message: 20/11/2007, 15h43
  5. Comment créer une dll à parti d'un programme en C
    Par laetous dans le forum Windows
    Réponses: 5
    Dernier message: 02/09/2006, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo