3

我正在尝试使用 PyQt将这个 .tiff 图像QPixmap加载到我的 gui 界面中。我有以下代码:

fileName = QFileDialog.getOpenFileName(self.parent, "Open Image", "/", "Image Files (*.png *.jpg *.bmp *.tiff)");
img = QtGui.QPixmap(fileName)
scaled_img = img.scaled(self.ui.img_label.size(), QtCore.Qt.KeepAspectRatio)
self.ui.img_label.setPixmap(scaled_img)

我的 GUIimg_label中的 a在哪里。Qlabel我用各种.jpg,.png.tiff图像对其进行了测试。它似乎正在工作,但是当我在这张图片上测试它时,它会返回Null

我试过的

有人可以建议我可能做错了什么吗?

4

2 回答 2

2

好吧,这有点奇怪。当我换行时加载图像:

img = QtGui.QPixmap(fileName)

至:

img = QtGui.QPixmap(fileName, "1")

事实上,当我为第二个参数指定任何数字字符串时,它似乎有效。我不确定第二个参数应该是什么,因为文档对此有点含糊。我希望有人能解释发生了什么,因为这真的让我很困惑。

于 2013-06-15T08:54:35.127 回答
1

QFileDialog.getOpenFileName() 返回一个元组。试试这个:

fileName = QFileDialog.getOpenFileName(self.parent, "Open Image", "/", "Image Files (*.png *.jpg *.bmp *.tiff)");
img = QtGui.QPixmap(fileName[0])
scaled_img = img.scaled(self.ui.img_label.size(), QtCore.Qt.KeepAspectRatio)
self.ui.img_label.setPixmap(scaled_img)
于 2013-06-07T19:09:49.053 回答