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

Qt Discussion :

Souci de tableau dynamique (groupe box -> Grid Layout -> Widget -> Scrollarea)


Sujet :

Qt

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 51
    Par défaut Souci de tableau dynamique (groupe box -> Grid Layout -> Widget -> Scrollarea)
    Bonjour à tous

    J'ai un petit problème à vous soumètre
    J'ai en effet besoin de cree un ensemble de GroupeBox sous forme de tableau

    L'un à la suite de l'autre et quand j'arrive au bout de la fenetre je passe à la ligne.

    J'ai donc penssé à un GridLayout dans un Widget lui meme dans une zone de Scroll et qui est dynamique en fonction du rezise de la fenetre.

    Le rezise fonctionne correctement je recharge bien tout le tableau d'élément.
    mais le soucis se situe sur le retour à la ligne.

    VLayout_Page7 = new QVBoxLayout(); // Cree surface vertical
    Scroll_Page7 = new QScrollArea(); // Cree surface de Scroll
    Scroll_Page7->setFrameShape(QFrame::NoFrame);
    Scroll_Page7->setStyleSheet(QString("QScrollArea{background-color : transparent;} QScrollArea::Over{background-color: transparent}"));
    Widget_Page7 = new QWidget(Scroll_Page7); // Cree un Widget
    Layout_Page7 = new QGridLayout(Widget_Page7); // Cree un Tableau
    Layout_Page7->setAlignment(Qt::AlignCenter);
    Layout_Page7->setColumnStretch((this->width())/160,0); Je recupère la largeur de la fenetre que je divise par la largeur de chaque Groupebox
    for(int i = 0 ; i < 20 ; i++) // Cree 20 Groupe Box de 150*150
    {
    QGroupBox *Group_Conso_Page7 = new QGroupBox();
    Group_Conso_Page7->setFixedSize(150,150);
    Layout_Page7->addWidget(Group_Conso_Page7);
    }
    Widget_Page7->setLayout(Layout_Page7);
    Scroll_Page7->setWidget(Widget_Page7);
    VLayout_Page7->addWidget(Scroll_Page7);
    page7->setLayout(VLayout_Page7);
    Premièrement je ne sais pas si j'emploie la bonne methode pour cree ce genre d'interface.

    Deuxièmement comment je peux gérer correctement tous cela.

    Je ne sais pas si je suis très clair , hésitez pas à me poser des questions !

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Salut,

    L'un à la suite de l'autre et quand j'arrive au bout de la fenetre je passe à la ligne.
    je ne comprend pas très bien ce que tu cherche à faire....

    Un truc comme : http://qt.developpez.com/doc/latest/...lowlayout.html

    toutes tes variables termine par 7 pourquoi??

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 51
    Par défaut
    Salut,

    7 : page1 page2 page3 page4 ...

    Euh Bon j'ai résolus mon soucis maintenant j'ai un problème de rafraichissement
    Comment je peux tester si un Widget est plein ou vide ?

    http://img192.imageshack.us/gal.php?g=sanstitrebq.jpg

    J'ai redimensionné la largeur de la fenetre et mes carré se sont ajusté automatiquement.

    pour se faire j'ai fait :

    if(page7->isActiveWindow())
    {
    delete Layout_Page7;
    delete Widget_Page7;
    delete Scroll_Page7;
    delete VLayout_Page7;
    }
    Mais isActiveWindow() n'est pas correcte à mon sens, il faut que je charge la fonction à l'execution du programme , si je le fait plus tard (quand je clic sur l'onglets par exemple le programme bug car il essai d'effacer des object non instancier).

    Donc il faudrais que je test le conteneur , c'est à dire le Widget qui est assigner à l'onglet Parc Consommation !
    Si je supprime par deletelater le widget l'onglet disparait .

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 51
    Par défaut
    Je relance mon sujet,

    Je n'ai toujours trouvé la condition IF
    void Quote ci dessus

Discussions similaires

  1. [AC-2010] Souci Tableau Dynamique => Valeur inexistante
    Par misterlagaffe dans le forum IHM
    Réponses: 1
    Dernier message: 25/02/2014, 20h26
  2. Tableau et groupe de colonnes dynamique
    Par Ornitho76 dans le forum ASP.NET
    Réponses: 0
    Dernier message: 17/09/2013, 20h35
  3. [XL-2007] Tableau croisé dynamique - groupe sur colonne date
    Par ARONE dans le forum Excel
    Réponses: 4
    Dernier message: 10/11/2009, 19h04
  4. Soucis tableau dynamique
    Par Darksnakes dans le forum Débuter
    Réponses: 8
    Dernier message: 14/11/2008, 20h41
  5. Réponses: 4
    Dernier message: 13/05/2002, 16h43

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