C++ 对QListView使用自定义形状
我正在尝试创建具有多边形形状的QListView。或者换句话说,我希望我的列表如下所示: 此时此刻看起来是这样的: 我已经知道或尝试过的:C++ 对QListView使用自定义形状,c++,qt5,qlistwidget,qlistview,qlist,C++,Qt5,Qlistwidget,Qlistview,Qlist,我正在尝试创建具有多边形形状的QListView。或者换句话说,我希望我的列表如下所示: 此时此刻看起来是这样的: 我已经知道或尝试过的: 我知道paintEvent(QPaintEvent*e)函数,我可以在其中更改小部件的形状,但我不知道如何更改包含该列表项的实际框的形状 我还尝试了QStyledItemDelegate,并覆盖了两个函数paint和sizeHint。但是有了这些,我只能更改列表中的元素,而不能更改实际的列表形状 换句话说,paintEvent的第一个选项将更改小部
- 我知道
函数,我可以在其中更改小部件的形状,但我不知道如何更改包含该列表项的实际框的形状paintEvent(QPaintEvent*e)
- 我还尝试了
,并覆盖了两个函数QStyledItemDelegate
和paint
。但是有了这些,我只能更改列表中的元素,而不能更改实际的列表形状sizeHint
换句话说,
paintEvent
的第一个选项将更改小部件的形状(图像中的黑色部分),而不是保存元素的容器。第二个选项是改变列表中元素的外观,而不是保存它们的容器
简言之,有什么方法可以更改容器的形状吗?您可以将其用于视图(或您称之为容器)和项目。