在執行時(無編譯錯誤),我得到的控制檯上的QWidget :: setLayout的錯誤:試圖設置QLayout [...],它已經具備了佈局
的QWidget :: setLayout的:嘗試QLayout 「」 上CGSearchResult 「」, 已經有
我使用下面的代碼佈局:
CGSearchResult::CGSearchResult(QWidget *parent) : QWidget(parent)
{
initControls();
SetTableContent();
}
void CGSearchResult::initControls()
{
backButton = new QPushButton(tr("&Back"));
connect(backButton, SIGNAL(clicked()), this, SLOT(showHome()));
model=new QStandardItemModel();
QWidget::setFont(QFont("Courier New", 8, QFont::Bold));
searchTable = new QTableView(this);
searchTable->showGrid();
searchTable->resize(720,400);
searchTable->horizontalHeader()->setDefaultSectionSize(170);
searchTable->verticalHeader()->setDefaultSectionSize(50);
searchTable->verticalHeader()->hide();
searchTable->horizontalHeader()->setResizeMode(QHeaderView::Fixed);
searchTable->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
QGridLayout *layout = new QGridLayout();
layout->addWidget(backButton, 0, 0, 1, 1);
layout->addWidget(searchTable, 2, 0, 1, 1);
setLayout(layout);
}
請修復您的代碼格式(用4個空格縮進這一切 - 要做到這一點,選擇你的代碼,然後按Ctrl-K) – 2010-10-03 15:13:31
感謝斯特凡.. – Finder 2010-10-03 15:16:47
後修改的源 - 你目前的片段顯然是不全面(例如沒有SetTableContent實現,該模型沒有在searchTable上設置)。只有當有人能夠幫助你。 – chalup 2010-10-03 15:47:50