Qt:QListWidget分隔线后面的特殊项目?

Mav*_*k33 5 qt qlistwidget

这与Qt:QListWidget项之间的分隔线有关吗? 但是这个上面的答案在每个项目之后添加了分隔线,我想知道在特定项目之后添加分隔线的方法.

Goo*_*gie 7

创建一个QListWidgetItem表示分隔符.这样的项目需要定义setSizeHint(),所以它的高度很小,而且setFlags()应该定义Qt::NoItemFlags,所以项目是不可选择的等等.然后,在将项目添加到之后QListWidget,将QFrame其形状设置为a QFrame::HLine,作为item的小部件(使用QListWidget::setItemWidget()).

至于您在评论中提出的其他问题,即:

我想在这个分隔线/框架的每一边添加一些间隙.我怎样才能做到这一点?

我现在想到的唯一解决方案是嵌入QFrame另一个内部QWidget并放置QWidgetas项目的小部件(请记住,您需要添加一个布局管理器QWidget以便在其中嵌入任何内容).然后在小部件上设置适当的边距:QWidget::setContentsMargins(int left, int top, int right, int bottom)