QListview,QListWidget实现图片/ICON显示在文字右边,图片根据按下状态显示不同样式

在这里插入图片描述

QListview,QListWidget默认实现是图片Icon显示在文字左边

但是在很多菜单中,我们需要将图片放置左边,然而又没有美工去做图片(做了图片就可以直接按钮贴图),就需要我们手工去实现这种方式,但Listview要自定义位置,需要去该源码并且很麻烦。

实现图片显示在文本右边

在这里插入图片描述

首先点开 ui文件,点Item属性按钮

在这里插入图片描述

找到Icon部分,手动添加自己的资源

在这里插入图片描述

最后找到文本部分,显示设置成从右往左

在这里插入图片描述

这样做完大家会发现,还是图片在文字左边,并没有达到相要的效果。
这时我们加入一行代码即可
ui->listWidget->setLayoutDirection(Qt::RightToLeft);

这样做在多列表时会比较麻烦 ,还有第二种方法用代码实现

首先需要在Item中加入数据,然后获取Listview的行数,进行遍历然后设置QListWidgetItem的setTextAlignment()即可, 加Icon直接调用Item seticon这种比较麻烦的在于设置选中后的样式

纯属自己搞着玩,觉得不错的点个赞把~

猜你喜欢

转载自blog.csdn.net/amxld/article/details/111932627