я в настоящее время имеют TableView, который выглядит, как этотMakingthe Столбцы Tableview под размер его содержимого
как вы можете видеть только третий столбец является правильным ширина в то время как первый и второй колонке больше. Есть ли способ сделать столбцы подходящими для содержимого или явно сделать меньше 1 столбцов. Я пробовал делать tableView->resizeColumnsToContents();
, но это не имеет значения. Какие-либо предложения ?
Это мой код
void Test::AddEntry()
{
QImage myimg;//(":/Test/Images/add.png");
QStandardItem* item_avtr = new QStandardItem();
item_avtr->setData(QPixmap::fromImage(myimg), Qt::DecorationRole) ;
QStandardItem* item_aonline = new QStandardItem();
item_aonline->setText("hello");
QStandardItem* item_name = new QStandardItem("Name");
QList<QStandardItem*> lst ;
lst.push_back(item_avtr);
lst.push_back(item_aonline);
lst.push_back(item_name);
ModelOptions->appendRow(lst);
}
модель инициируется как этот
ModelOptions =new QStandardItemModel();
ui.tableView->setModel(ModelOptions);
QStringList labels;
labels.push_back("col1");
labels.push_back("col2");
labels.push_back("col3");
ModelOptions->setHorizontalHeaderLabels(labels);
ui.tableView->horizontalHeader()->setVisible(false);
ui.tableView->verticalHeader()->setVisible(false);
ui.tableView->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
ui.tableView->resizeColumnsToContents();
ui.tableView->setEditTriggers(QAbstractItemView::NoEditTriggers);
AddEntry();
'resizeColumnsToContents()' должно работать отлично для этого. Вероятно, что-то не так с тем, как вы его используете. – Chris
Код показывает, что я делаю – Rajeshwar