pyqt5界面
转化的first.py …需要注意将控件名称改成自己的
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QFileDialog, QApplication
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(536, 527)
self.pushButton_openimage = QtWidgets.QPushButton(Form)
self.pushButton_openimage.setGeometry(QtCore.QRect(50, 70, 91, 31))
self.pushButton_openimage.setObjectName("pushButton_openimage")
self.pushButton_feature = QtWidgets.QPushButton(Form)
self.pushButton_feature.setGeometry(QtCore.QRect(50, 120, 91, 31))
self.pushButton_feature.setObjectName("pushButton_feature")
self.label_image = QtWidgets.QLabel(Form)
self.label_image.setGeometry(QtCore.QRect(180, 50, 281, 261))
self.label_image.setObjectName("label_image")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
##########添加############关联,注意控件的名称需要更改为自己的###
self.pushButton_openimage.clicked.connect(self.openImage)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.pushButton_openimage.setText(_translate("Form", "打开图像"))
self.pushButton_feature.setText(_translate("Form", "提取特征"))
self.label_image.setText(_translate("Form", "TextLabel"))
#########添加############
# 选择本地图片上传
def openImage(self):
global imgNamepath # 这里为了方便别的地方引用图片路径,将其设置为全局变量
# 弹出一个文件选择框,第一个返回值imgName记录选中的文件路径+文件名,第二个返回值imgType记录文件的类型
# QFileDialog就是系统对话框的那个类第一个参数是上下文,第二个参数是弹框的名字,第三个参数是默认打开的路径,第四个参数是需要的格式
#####################注意一定是None,不然会报错####################################
imgNamepath, imgType = QFileDialog.getOpenFileName(None, "选择图片","", "*.jpg;;*.png;;All Files(*)")
# 通过文件路径获取图片文件,并设置图片长宽为label控件的长、宽
img = QtGui.QPixmap(imgNamepath).scaled(self.label_image.width(),self.label_image.height())
# 在label控件上显示选择的图片
self.label_image.setPixmap(img)
新建一个运行模块run1.py
import sys
import first
from PyQt5.QtWidgets import QApplication,QMainWindow
if __name__ == '__main__':
# 只有直接运行这个脚本,才会往下执行
# 别的脚本文件执行,不会调用这个条件句
# 实例化,传参
app = QApplication(sys.argv)
# 创建对象
mainWindow = QMainWindow()
# 创建ui,引用demo1文件中的Ui_MainWindow类
ui = first.Ui_Form()
# 调用Ui_MainWindow类的setupUi,创建初始组件
ui.setupUi(mainWindow)
# 创建窗口
mainWindow.show()
# 进入程序的主循环,并通过exit函数确保主循环安全结束(该释放资源的一定要释放)
sys.exit(app.exec_())
点击打开图像,就可以在本地选择图像。
参考:pyqt5:利用QFileDialog从本地选择图片\文本文档显示到label、保存图片\label文本到本地(附代码)
PyQt5(一) PyQt5安装及配置,从文件夹读取图片并显示,模拟生成素描图像
PyQt5报错Process finished with exit code -1073740791 (0xC0000409)
Pyqt5中运行报错Process finished with exit code -1073740791 (0xC0000409)