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 :

Problème de placement des widgets dans un layout


Sujet :

Qt

  1. #1
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 117
    Points : 58
    Points
    58
    Par défaut Problème de placement des widgets dans un layout
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    xbelTree = new XbelTree;
     
    	QFile file(":/node.xbel");
     
    	if (!file.open(QFile::ReadOnly | QFile::Text)) {
    		QMessageBox::warning(this, tr("Erreur"), tr(
    				"Probleme de lecture du fichier %1:\n%2.") .arg(
    				file.errorString()));
    		return;
    	}
     
    	xbelTree->read(&file);
    	xbelTree->setFixedWidth(256);
    	ui.horizontalLayout->addWidget(this->xbelTree);
    	QWidget *widget=new QWidget();
    	ui.horizontalLayout->addWidget(widget);
    	ui.centralwidget->setLayout(ui.horizontalLayout);
    Le code suivant est de xbel tree
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    XbelTree::XbelTree(QWidget *parent) :
    	QTreeWidget(parent) {
    	QStringList labels;
    	labels << tr("Noeud");
     
    	header()->setResizeMode(QHeaderView::Stretch);
    	setHeaderLabels(labels);
     
    	folderIcon.addPixmap(style()->standardPixmap(QStyle::SP_DirClosedIcon),
    			QIcon::Normal, QIcon::Off);
    	folderIcon.addPixmap(style()->standardPixmap(QStyle::SP_DirOpenIcon),
    			QIcon::Normal, QIcon::On);
    	bookmarkIcon.addPixmap(style()->standardPixmap(QStyle::SP_FileIcon));
    }
    En fait lorsque j'exécute mon application le xbel tree ne s'affiche pas à gauche du centrawidget de mon maiwindow mais il s'affiche à son milieu.
    Comment dois je faire pour que mon xbeltree se décale à gauche c'est à dire à la position x=0 et y=0 dans le layout "horizontallayout" du centralwidget?

  2. #2
    Membre averti
    Avatar de Niak74
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    271
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 271
    Points : 333
    Points
    333
    Par défaut
    Si ton layout est un QHBoxLayout :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ui.horizontalLayout->addWidget(this->xbelTree);
    ui.horizontalLayout->addStretch();
    Doc : http://qt.developpez.com/doc/4.5/qboxlayout/#addstretch

    Ya aussi la fonction setAlignment (par défaut c'est centré) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ui.horizontalLayout->setAlignment(Qt::AlignLeft);
    http://qt.developpez.com/doc/4.5/qla...setalignment-2
    Un clavier Azerty en vaut deux.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Placement des éléments dans mon layout
    Par rsuinux dans le forum Composants graphiques
    Réponses: 6
    Dernier message: 01/05/2015, 16h07
  2. problème de placement des antennes dans les réseaux GSM
    Par lucastof dans le forum Développement
    Réponses: 2
    Dernier message: 28/03/2012, 15h45
  3. Probleme Linear Layout,placement des widgets..
    Par frimeman dans le forum Composants graphiques
    Réponses: 3
    Dernier message: 20/04/2011, 16h50
  4. problème our passer des string dans tableau d'int
    Par Battosaiii dans le forum C++
    Réponses: 9
    Dernier message: 15/07/2004, 17h42
  5. Réponses: 1
    Dernier message: 06/03/2003, 11h57

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