我正在使用QStandardItemModel與QStandardItem的。QTreeView vs setIndexWidget
我不想寫我自己的模型和任何代表。
我只是想有在第二列QComboBox'es複選框的樹...
m_model->setColumnCount(2);
for (int i = 0; i < sectionCount; i++)
{
QStandardItem * section = new QStandardItem(tr("Section %1").arg(i+1));
section->setCheckable(true);
section->setCheckState(Qt::Checked);
for (int j = 0; j < itemsCount; j++)
{
QStandardItem * item = new QStandardItem(tr("Item %1").arg(j+1));
item->setCheckable(true);
item->setCheckState(Qt::Checked);
QStandardItem * item2 = new QStandardItem("xxx");
section->appendRow(QList<QStandardItem*>() << item << item2);
QComboBox * combo = new QComboBox();
QModelIndex index = m_model->index(j, 1,);
// HERE i have index = {-1;-1}
ui->treeView_options->setIndexWidget(index, combo);
}
m_model->appendRow(section);
}
是否有可能使用setIndexWidget這種方式?
UPDATE:
我在第二欄沒有QComboBox ...爲什麼?
我想顯示靜態內容 – k06a 2012-03-12 14:49:19
嗯......這不是我所理解的'我只是想在第二列中使用帶有QComboBox的複選框...'。靜態意味着您必須手動爲您想要的每個單元創建1個組合,與數據無關 – Koying 2012-03-12 14:55:10
CheckBox的內容在編譯時固定。 – k06a 2012-03-12 14:58:14