将项目小部件宽度(列表内容)调整为父QListWidget宽度
Adjust item widget width (list content) to parent QListWidget width
目标:
我正在尝试在列表中显示一个自定义小部件的几个实例。小部件可能包含用户定义的长路径,因此我有一个从QLabel派生的类,它可以省略[0]文本(ElidedLabel
)。列表项应该是可选择的,所以我使用QListWidget来显示它们。然后将所述自定义小部件的实例设置为每个QListWidgetItem的项目小部件
ElidedLabel按照这里的建议实现:状态栏和elided标签
问题:
自定义小部件往往比显示它的QListWidget更宽。为了使用ElidedLabel,QListWidgets应该调整自定义小部件的大小以匹配其宽度,从而消除文本。出于某种原因,这并没有发生,自定义小部件只是被剪裁掉了。
我尝试过的:
我放了一个最小的例子,演示了一个伪"自定义小部件",它消除了主窗口中普通布局的子窗口。同一个小部件没有在QListWidget中作为一个项目小部件正确地消除
SizePolicies在任何地方都设置为Preferred
,但我觉得我也玩过其他一切。ElidedLabel的minimumWidth设置为1
以允许其收缩。布局约束保留为默认值。QListWidget的ResizeMode设置为Adjust
。
所以不会让我发布截图,请在这里找到:ht*ps://filetrain.de/elidetest.png
[0]:elide:剪切不合适的文本,并用省略号("…")替换
将这两种方法添加到ElidedLabel
virtual QSize minimumSizeHint() const
{
return QSize(0, QLabel::minimumSizeHint().height());
}
virtual QSize sizeHint() const
{
return QSize(0, QLabel::sizeHint().height());
}
相关文章:
- 为char数组调整zlib-zpipe
- 在C++中测量postscript字体宽度
- 调整大小后指向元素值的指针unordered_map有效?
- 在C++中调整向量中的索引
- 如何在Qbutton的帮助下更改Q对话框的宽度
- 哪些库可以通过Opencv调整曝光率
- 宽度为奇数的16位纹理为片状
- 如何调整 std::vector of Eigen::MatrixXd 的大小
- Alt+Enter 在 Win32 应用中,管理大小调整和分辨率
- 在容量内调整矢量大小时的性能影响
- 将 boost::odeint 与向量类一起使用,而无需调整向量的大小
- 如何在Qt TableView中将列的宽度调整为数据并将最后一部分拉伸在一起
- 如何在调整列表视图大小时将标题宽度设置为等于其列表视图控件宽度
- QGraphics手动调整窗口大小后场景宽度/高度没有变化
- OPENCV C 调整大小函数:新宽度应乘以3
- 将项目小部件宽度(列表内容)调整为父QListWidget宽度
- 动态调整组合框的宽度,以便可以显示整个字符串
- QListWidgetItem -调整宽度和高度的内容
- 在c++中调整卷文件的长度和宽度
- 在c++程序上调整宽度