QGraphicsScene不会用怎么办?其实我不太明白原理,但是能用
使用qtdesigner设计ui,
在cmd用下面命令从.ui转成.py文件
pyuic5 -o ui.py ui.ui
生成的.py文件部分展示,定位到有关QGraphicsScene的地方
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(800, 600)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.graphicsView = QtWidgets.QGraphicsView(self.centralwidget)
self.graphicsView.setGeometry(QtCore.QRect(210, 70, 351, 231))
self.graphicsView.setObjectName("graphicsView")
代码里QGraphicsScene不会用怎么办,在下面代码的下面
self.graphicsView.setObjectName("graphicsView")
添加这四行代码
self.scene = QGraphicsScene()
self.pixmap_item = QGraphicsPixmapItem()
self.scene.addItem(self.pixmap_item)
self.graphicsView.setScene(self.scene)
之后在编写打开图片的函数时,这样写
def open(self):
self.file, _ = QFileDialog.getOpenFileName(None, "打开文件")
if self.file is not "":
pixmap = QPixmap(self.file).scaled(self.graphicsView.size(),Qt.KeepAspectRatio)
self.pixmap_item.setPixmap(pixmap)