猫史档案馆


【Python作品分享】微型照相机(有ui代码)【作品秀】

用户:AbnormalLOGAbnormalLOG查看:1 回复:2 评论:1 创建时间:2020-11-08T15:13:58


【作品展示】

center_image

 

【作品介绍】

用来照相的

 

【作品源代码】

from PySide2.QtCore import *
from PySide2.QtGui import *
from PySide2.QtWidgets import *
import codemao
import PIL.Image as pil
import sys
import os
import random
import matplotlib.pyplot as plt


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        if not MainWindow.objectName():
            MainWindow.setObjectName(u"MainWindow")
        MainWindow.resize(249, 313)
        MainWindow.setMinimumSize(QSize(248, 0))
        font = QFont()
        font.setPointSize(9)
        MainWindow.setFont(font)
        self.exit = QAction(MainWindow)
        self.exit.setObjectName(u"exit")
        self.centralwidget = QWidget(MainWindow)
        self.centralwidget.setObjectName(u"centralwidget")
        self.take = QPushButton(self.centralwidget)
        self.take.setObjectName(u"take")
        self.take.setGeometry(QRect(150, 90, 81, 41))
        font1 = QFont()
        font1.setFamily(u"\u5fae\u8f6f\u96c5\u9ed1")
        font1.setPointSize(9)
        self.take.setFont(font1)
        self.import_ = QPushButton(self.centralwidget)
        self.import_.setObjectName(u"import_")
        self.import_.setGeometry(QRect(20, 90, 81, 41))
        self.import_.setFont(font1)
        self.label = QLabel(self.centralwidget)
        self.label.setObjectName(u"label")
        self.label.setGeometry(QRect(80, 20, 91, 31))
        font2 = QFont()
        font2.setFamily(u"\u5fae\u8f6f\u96c5\u9ed1")
        font2.setPointSize(13)
        self.label.setFont(font2)
        self.filelabel = QLabel(self.centralwidget)
        self.filelabel.setObjectName(u"filelabel")
        self.filelabel.setGeometry(QRect(20, 130, 191, 91))
        font3 = QFont()
        font3.setFamily(u"\u5fae\u8f6f\u96c5\u9ed1")
        font3.setPointSize(12)
        self.filelabel.setFont(font3)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QMenuBar(MainWindow)
        self.menubar.setObjectName(u"menubar")
        self.menubar.setGeometry(QRect(0, 0, 249, 22))
        self.menufile = QMenu(self.menubar)
        self.menufile.setObjectName(u"menufile")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QStatusBar(MainWindow)
        self.statusbar.setObjectName(u"statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.menubar.addAction(self.menufile.menuAction())
        self.menufile.addSeparator()
        self.menufile.addAction(self.exit)

        self.retranslateUi(MainWindow)

        QMetaObject.connectSlotsByName(MainWindow)
    # setupUi

    def retranslateUi(self, MainWindow):
        MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"MainWindow", None))
        self.exit.setText(QCoreApplication.translate("MainWindow", u"exit", None))
        self.take.setText(QCoreApplication.translate("MainWindow", u"\u62cd\u7167", None))
        self.import_.setText(QCoreApplication.translate("MainWindow", u"\u5bfc\u5165", None))
        self.label.setText(QCoreApplication.translate("MainWindow", u"\u5fae\u578b\u7167\u76f8\u673a", None))
        self.filelabel.setText(QCoreApplication.translate("MainWindow", u"\u56fe\u7247\u8def\u5f84:", None))
        self.menufile.setTitle(QCoreApplication.translate("MainWindow", u"file", None))
    # retranslateUi



class GUIx(QMainWindow,Ui_MainWindow):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
        self.show()
        self.take.clicked.connect(self.take__)
        self.import_.clicked.connect(self.import__)
        self.exit.triggered.connect(self.exit__)
        self.photos_file = None
    def take__(self):
        photo=codemao.take_photos("space_pressed")
        name=f'p{random.randint(1,1000)}'
        file = f'photos{os.sep}take{os.sep}'
        photo.save_to(file,name)
        self.photos_file=file,os.sep,name
        photo.open_image()
    def import__(self):
        self.data_file,_=QFileDialog.getOpenFileName(
            caption='选择数据文件',filter='(*.png *.jpg *.jpeg)')
        if self.data_file:
            if os.path.isfile(self.data_file):
                self.filelabel.setText(self.data_file)
                p = pil.open(self.data_file)
                plt.imshow(p)
                plt.show()
            else:
                QMessageBox.warning(self,'注意','文件有误')
        else:
            QMessageBox.warning(self,'注意','重新选择图片文件')
    def exit__(self):
        sys.exit(0)
def run():
    app = QApplication(sys.argv)
    window = GUIx()
    sys.exit(app.exec_())
if __name__ == '__main__':
    run()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
feickefeicke

按了摄像头拍摄但是拍照界面关不掉

点赞0


评论


编程猫mingxuan编程猫mingxuan

动态链接库(DLL)初始化例程失败。

点赞0


评论