begin process at 2012 05 28 05:01:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

Accès aux données d'une autre classe


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Accès aux données d'une autre classe

vendredi 1 mai 2009 à 11:07:38 | Accès aux données d'une autre classe

ArkSer78

Bonjour,

J'essaye de développer une application avec une interface graphique en C++ et en utilisant les librairies de dévellopement STL et QT.

J'ai créé une classe principale dont le but est d'afficher une fenêtre qui contiendra plusieurs onglets, et chaque onglet sera codé dans une classe différente.

Dans la classe principale j'ai une donnée membre qui est une classe contenant 4 "vector" sur différents types d'objets, et je voudrais que chaque classe définissant un onglet est accès à cette donnée membre de la classe principale. Le problème est que je n'y arrive pas...

Pouvez-vous m'indiquer les manières dont je pourrai m'y prendre svp car la je galère un peu.

Merci d'avance


Pour information voila les codes des différentes classes qui vous seront utiles pour mieux comprendre mon problème :

class Donnees
{
    private :
        std::vector <Personne *> listePersonnes;
        std::vector <Conference *> listeConferences;
        std::vector <Article *> listeArticles;
        std::vector <Review *> listeReviews;

    ...
};



#include <QTabWidget>
#include "OngletSoumissionArticle.h"
#include "Donnees.h"

class FenetreOnglets : public QDialog
{

    private :
        Donnees* mesDonnees;
        QTabWidget* tabBar;
        int tabSoumissionArticle;
        OngletSoumissionArticle* monOngletSoumissionArticle;

    public :
        FenetreOnglets(QWidget* parent = 0);

    ...
};


FenetreOnglets::FenetreOnglets(QWidget* parent):QDialog(parent)
{
    tabBar = new QTabWidget(this);
    monOngletSoumissionArticle = new OngletSoumissionArticle();
    tabSoumissionArticle = tabBar->addTab(monOngletSoumissionArticle, tr("Soumission d'un article"));
}


class OngletSoumissionArticle : public QWidget
{
    private :
        ...
        QListWidget* listeBoxConference;

    public :
        OngletSoumissionArticle(QWidget* parent = 0);
        ...
};

OngletSoumissionArticle::OngletSoumissionArticle(QWidget* parent):QWidget(parent)
{
    std::vector<Conference *>::iterator itConference;
    listeBoxConference = new QListWidget(this);

//ici je voudrai inclure dans la liste déroulante la liste des conferences contenues dans le vector listeConferences contenu dans la classe Donnees présents dans la fenetre principale

}




dimanche 10 mai 2009 à 14:33:19 | Re : Accès aux données d'une autre classe

rt15

Membre Club Administrateur CodeS-SourceS
Bienvenue,

Bin tu peux ajouter tes vectors en entrée du constructeur de OngletSoumissionArticle, ou ajouter un setter. Cela te permettra d'affecter un nouveau champ "Donnees* mesDonnees;" ajouté à ta classe OngletSoumissionArticle.

Quelque chose comme ça :

#include <iostream>

using namespace std;

class Donnees
{
    public :
        Donnees(string value): _value(value) {}
        void Aff() { cout << _value << endl; }
    private :
        string _value;
};

class OngletSoumissionArticle
{
    public :
        OngletSoumissionArticle(Donnees *donnees): mesDonnees(donnees) {}
        void Aff() { mesDonnees->Aff(); }
    private :
        Donnees* mesDonnees;
};

class FenetreOnglets
{
    private :
        Donnees* mesDonnees;
        OngletSoumissionArticle* monOngletSoumissionArticle;
    public :
        FenetreOnglets()
        {
           mesDonnees = new Donnees("Hello world !");
           monOngletSoumissionArticle = new OngletSoumissionArticle(mesDonnees);
           monOngletSoumissionArticle->Aff();
           //tabSoumissionArticle = tabBar->addTab(monOngletSoumissionArticle, tr("Soumission d'un article"));
           delete monOngletSoumissionArticle;
           delete mesDonnees;
        }
};

int main()
{
  FenetreOnglets();
  return 0;
}



Cette discussion est classée dans : classe, vector, parent, qwidget, ongletsoumissionarticle


Répondre à ce message

Sujets en rapport avec ce message

VECTOR VECTOR VECTOR VECTOR !!!!!! [ par Kinamstrong ] Salut,j'ai une classe Inscrit et une classe Liste Inscrit et je voudrai utiliser Inscrit comme tyde vecteur et ListeInscrit emploiereai cette classe vector et objet de classe [ par cppdupdup34 ] voila mon pbclass tutu {...};int main{...vector prout;tutu objet;prout.push_back(objet);et la ...492 C:\Dev-Cpp\include\c++\bits\stl_vector.h instant classe vector sous DEV C++ [ par briscard ] Salut a tous!ma classe vector ne marche pas sous DEV C++, et j'ai une erreur de ce type:2 C:\DEV-CPP\include\c++\backward\backward_warning.h:32#warnin Vector de classe [ par 0xYg3n3 ] Bonjour, Voila j'ai defini un vecteur de classe Mais le probleme c'est que je ne sais pas comment ajouter un objet avec un vecteur. En effet ma class Vector et classe abstraite [ par darunia ] Bonjour, Dans le cadre d'un projet de simulation de course cycliste, j'ai une classe Etape qui est abstraite et 3 classes qui heritent de celle ci. heritage multiple [ par bhytr ] j'ai deux classes: une classe de type QLabel : class MyLabel : QLabel(p_parent) une classe QSmainWindow : class MyWidget : public QMainWindow je vou STL vector et tableau [ par cybermax62 ] j'ai une petite question sur la classe template vector. je sais que c'est possible d'initiliser un vector avec un tableau point de vue C (char[]). j'a Vector et classe abstraite [ par titpeste ] Bonjour,dans le cadre d'un projet C++ pour mon ecole, je dois implémenter un vector contenant des objets "abstraits".En fait, j'ai une classe Contrain Problème d'héritage de classes templates [ par emiaille ] Bonjour tout le monde,En ce moment je m'initie aux templates et j'ai donc créer une classe template matrix delaquelle je tire la classe vector par hér Appeler la classe parent [ par Metrox ] Salut à tous.J'utilise une classe A et une classe B.dans la classe A, je construis quatre objets (objet[i], i: 0-->3) B.de plus j'ai un tableau bidime


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,889 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales