gpt4 book ai didi

qt - 通过模型在 QTableView 中列的初始宽度

转载 作者:行者123 更新时间:2023-12-04 13:09:02 29 4
gpt4 key购买 nike

我有基于 QAbstractTableModel 的 QTableView。
在 QAbstractTableModel 中重新实现了方法 headerData() 以根据模型设置列名和宽度。但

switch( role )
{
...
case Qt::SizeHintRole : return QSize( 500, 0 );
...
}

没有效果。表中的所有列都具有相同的宽度()。我应该怎么做才能正确设置初始列宽。

PS:在 this问题被建议使用代表来解决同样的问题,但我认为应该使用 headerData()。

最佳答案

填充模型后,您可以在列上设置单独的策略。这对我有帮助,我的表格有 4 列,我希望前两列填充 View ,最后两列适合相当窄的内容,同时仍然完全填充 View 。

this->ui->tableView->setModel(model);

ui->tableView->horizontalHeader()->setSectionResizeMode(0, QHeaderView::Stretch);
ui->tableView->horizontalHeader()->setSectionResizeMode(1, QHeaderView::Stretch);
ui->tableView->horizontalHeader()->setSectionResizeMode(2, QHeaderView::ResizeToContents);
ui->tableView->horizontalHeader()->setSectionResizeMode(3, QHeaderView::ResizeToContents);

enter image description here

关于qt - 通过模型在 QTableView 中列的初始宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26011291/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com