2014-06-27 8 views
3

Je suis en train de définir un QGridLayout avec quatre widget comme dans l'image ci-dessous: GoalQGridLayout avec la taille différente des cellules

cependant ce que j'ai réussi avec QGridLayout à partir de maintenant: Current situation

I Je ne vois pas comment je peux définir la taille de la ligne différente pour les colonnes 0 et 1. Peut-être que QGridLayout n'est pas la bonne façon de le faire, mais je ne connais aucun autre widget qui ferait l'affaire. Est-ce que quelqu'un a une idée de comment y parvenir?

Répondre

3

J'utiliserais des dispositions verticales et horizontales au lieu de la disposition de la grille. Donc, vous avez besoin de deux mises en page verticale et horizontale: un

// Left side 
QLabel *lbl1 = new QLabel(this); 
QTableWidget *t = new QTableWidget(this); 
QVBoxLayout *vl1 = new QVBoxLayout; 
vl1->addWidget(lbl1); 
vl1->addWidget(t); 

// Right side 
// QImage is not a widget, so it should be a label with image 
QLabel *lbl2 = new QLabel(this); 
QCustomPlot *pl = new QCustomPlot(this); 
QVBoxLayout *vl2 = new QVBoxLayout; 
vl2->addWidget(lbl2); 
vl2->addWidget(pl); 

// Create and set the main layout 
QHBoxLayout mainLayout = new QHBoxLayout(this); 
mainLayout->addLayout(vl1); 
mainLayout->addLayout(vl2); 
+0

Cela fonctionne très bien. Merci mon pote. – maelorn

2

Je ne pense pas que les réseaux sont la voie à suivre ici ... En effet

Vous pouvez essayer de faire une mise en page horizontale de 2 QFrames, dans lequel vous définissez une disposition verticale chacun avec les deux widgets de cette "colonne"

Questions connexes