pyqt5如何实现绘制ui,列表窗口,滚动窗口显示图片的方法-创新互联
小编给大家分享一下pyqt5如何实现绘制ui,列表窗口,滚动窗口显示图片的方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

1:listWidget 以滚动窗口显示文件下的所有文件:

self.listWidget = QtWidgets.QListWidget(self.gridLayoutWidget)
self.listWidget.setMaximumSize(QtCore.QSize(16777215, 400))
self.listWidget.setObjectName("listWidget")
以上代码都是以qtDesigner画出来自动生成的
self.listWidget.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn#这里以滚动窗口显示)
self.pushButton_10.clicked.connect(TabWidget.viewList)#关联事件
def viewList(self):
for i in os.listdir("./photo"):
self.listWidget.addItem("./photo"+"/"+i)2:点击列表里的item能够返回item名称并显示图片

self.listWidget.currentItemChanged.connect(TabWidget.image)#这是点击item会返回item的名称:ps我使用qtDesigner绘制的TabWidget。 def image(): print(self.listWidget.currentItem().text()) imagefile=self.listWidget.currentItem().text() png = QtGui.QPixmap(imagefile).scaled(self.label.width(), self.label.height()) self.label.setPixmap(png) #在lable上显示图片
3:在滚动窗口中显示文件中的所有图像

这部分先用qtDesigner 绘制了一块scrollArea, 使用scrollArea的好处是自动会生成滚动条
def suoluetu(self):
names=[]
positions = [(i, j) for i in range(4) for j in range(30)]
for i in os.listdir(r"./photo"):
names.append("./photo"+"/"+i)
self.filewidget = QWidget()
self.filewidget.setMinimumSize(350, 1800)
for position, names in zip(positions, names):
lab = QLabel(self.filewidget)
lab.setFixedSize(100,150)
pix=QtGui.QPixmap(names)
lab.setPixmap(pix)
lab.move(100*position[0]+50,150*position[1]+70)#这部分是我自己瞎写的
self.scrollArea.setWidget(self.filewidget)
一开始采用的gridLayout显示的图片效果也还不错,但是不能滚动画面
后来采用这种方法
很遗憾窗口中的图片不能点击,就不能对相应的图片进行分析
所以我觉得还是应该采用listWidget的方式显示图片看完了这篇文章,相信你对“pyqt5如何实现绘制ui,列表窗口,滚动窗口显示图片的方法”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联成都网站设计公司行业资讯频道,感谢各位的阅读!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网页名称:pyqt5如何实现绘制ui,列表窗口,滚动窗口显示图片的方法-创新互联
当前网址:http://www.jxjierui.cn/article/dgiejd.html


咨询
建站咨询
