2010-01-29 145 views
7

任何人都可以告訴我爲什麼出現錯誤以及如何解決它?將佈局添加到Qt中的另一個佈局[C++]

 QGridLayout* mainLayout = new QGridLayout; 
     QGridLayout *leftLayout = new QGridLayout; 
     QGridLayout *rightLayout = new QGridLayout; 
     mainLayout->addLayout(leftLayout); 
     mainLayout->addLayout(rightLayout); 
     setLayout(mainLayout); 

錯誤我收到: 「錯誤:調用沒有匹配的函數 'QGridLayout :: addLayout(QGridLayout * &)'
感謝您的任何幫助。

回答

8

的Qt4參考說:

void addLayout (QLayout * layout, int row, int column, Qt::Alignment alignment = 0)

所以你要做的:

mainLayout->addLayout(leftLayout, 0, 0); 
mainLayout->addLayout(rightLayout, 0, 1); 
+0

而whay它給了我一個錯誤,說我提供裁判指針作爲參數? – 2010-01-29 21:25:57

+0

可能是因爲你的編譯器首先試圖通過引用傳遞參數。但是,如果你按照我所顯示的那樣傳遞了正確的參數,就不會再看到錯誤了(我期望)。 – 2010-01-29 21:52:14