pyqt5,打开本地图像

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)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值