2014-06-27 29 views
3

我想設置一個具有四個部件一個QGridLayout,如下圖所示:GoalQGridLayout不同尺寸的小區

然而

我已經與QGridLayout管理到現在爲止是:Current situation

我沒有看到我可以如何設置不同的行的大小爲0和1列。也許QGridLayout是不正確的做法,但我不知道任何其他控件會做的伎倆。 有沒有人有任何想法如何實現這一目標?

回答

3

我會使用垂直和水平佈局,而不是網格佈局。所以,你需要兩個垂直佈局和水平之一:

// 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

它工作得很好。謝了哥們。 – maelorn

2

我不認爲電網是確實去這裏的路......

你可以嘗試製作2個QFrames水平佈局,其中你設置一個垂直佈局,每個都有該「列」的兩個小部件。