Qt 我如何告诉QListView调整大小以适应?
我有一个QListView,并分配了一个模型和一个代理。我用它在水平条上显示图像,如下所示 在用户事件中,数据在模型中更新。一个这样的事件会导致图像的宽度减小,如下所示(#4) 我在相应的索引上发出一个dataChanged,并且只重新绘制相关的小部件。因此#4和#5之间存在一个无法填补的缺口。我想一定有办法刷新所有可见的行,但我找不到它 我尝试了以下方法,但不起作用:Qt 我如何告诉QListView调整大小以适应?,qt,qlistview,Qt,Qlistview,我有一个QListView,并分配了一个模型和一个代理。我用它在水平条上显示图像,如下所示 在用户事件中,数据在模型中更新。一个这样的事件会导致图像的宽度减小,如下所示(#4) 我在相应的索引上发出一个dataChanged,并且只重新绘制相关的小部件。因此#4和#5之间存在一个无法填补的缺口。我想一定有办法刷新所有可见的行,但我找不到它 我尝试了以下方法,但不起作用: 1. viewport()->updateGeometries() 2. viewport()->updat
1. viewport()->updateGeometries()
2. viewport()->update()
3. I tried changing the width to see if it refreshes
int curWidth = mp_mylistview->width();
this->mp_mylistview->setFixedWidth(curWidth + 1);
this->mp_mylistview->setFixedWidth(curWidth);
有什么建议吗
注:以上图像为图示样本,非原件。如果您需要代码,我需要在发布之前过滤掉机密信息。我所要做的就是发出layoutChanged(),作为
dataChanged()
的后续操作。您是否尝试设置为QListView::Adjust
和false
?是的。resizeMode设置为调整。uniformItemSizes-我没有更改(默认为false)。我可以看到不同大小的项目。你在小部件中实现了最小大小提示方法吗?@Jay没有。我没有。问题似乎在于小部件之间的间距,而不是小部件的大小——如选择所示。