繁体   English   中英

如何在pyqt5中设置动态图像路径?

[英]how to set dynamic image path in pyqt5?

这是我的代码

 def setimage(self):
    self.image_label.setAutoFillBackground(True)
    filename = QtWidgets.QFileDialog.getOpenFileName(self, 'insert image', r'C:\Users\PristineSofts\Demo\Images','image (*.jpg *.png *.icon *.gif)')
    print(filename)
    self.image_label.setStyleSheet("QLabel{border:2px solid #d6d6d6;\n"
                                   "background-image:url(" +filename+ ");\n"

“边界半径:30PX;} \\ n”)

我试图动态设置标签上的图像,但是此代码对我不起作用。它显示文件名中的路径正确,但显示空白并且窗口关闭。我也使用了QPixmap,但它不起作用。 谁能帮我? 提前致谢!

使用标签,您可以:

 # Make sure you load this library
 from PyQt5.QtGui import QPixmap

 # And then this should work
 def setimage(self):
    filename = QtWidgets.QFileDialog.getOpenFileName(self, 'insert image', r'C:\Users\PristineSofts\Demo\Images','image (*.jpg *.png *.icon *.gif)')
    print("path is " + filename[0] " and I don't need " + filename[1])
    pngfile = QPixmap(filename[0]) # We create the image as a QPixmap widget, using your filename.
    self.image_label.setPixmap(pngfile) # And then we add it like this.

注意:如果仍然有问题,请确保正确提供路径。 另外,您可能需要在打印后执行self.image_label.clear()

编辑:文件名似乎是一个元组,因此您需要从中选择所需的项目。 filename [0]将是路径字符串。 filename [1]将是不需要的数据图像(*.jpg *.png *.icon *.gif)

在python上,您通常以元组,列表或字典的形式获取数据,并且通过指定该数据item[number of index]可以轻松地完成数据的item[number of index] 请注意,python处的索引从0开始,而不是1。

示例:如果我要在此列表中选择patata

mytuple = ("something", "nothing", "patata", "test")

我只会使用mytuple[2] ,因为索引[0]是something ,索引[1] nothing patata是, patata是[2],而test是[3]。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM