首页 > 解决方案 > 在 pyqt 中关闭窗口并出现错误退出代码 -1073740791

问题描述

我是pyqt5的新手,当我在做一个开发相机软件的程序时,给出了一个点击按钮来捕捉图像。当我按下回车键时,它会单击图像并突然保存在磁盘中,窗口正在关闭并带有退出代码

进程以退出代码 -1073740791 (0xC0000409) 结束,代码如下

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
import cv2

cam = cv2.VideoCapture(0)


class camera(QWidget):

def __init__(self):
    super().__init__()
    self.camtitle = 'Camera'
    self.camleft = 0
    self.camtop = 0
    self.camwidth = 640
    self.camheight = 480
    self.camera_button = QPushButton("camera_click", self)
    self.camera_button.move(50, 50)

    self.cameraUI()

def cameraUI(self):
    self.setWindowTitle(self.camtitle)
    self.setGeometry(self.camleft, self.camtop, self.camwidth, self.camheight)
    self.setWindowIcon(QIcon('Logo.png'))
    self.label = QLabel(self)
    self.label.move(100, 100)

    self.camerawindow()

def camerawindow(self):
    # cam = cv2.VideoCapture(0)

    while (True):
        ret, frame = cam.read()

        rgbImage = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
        convertToQtFormat = QImage(rgbImage.data, rgbImage.shape[1], rgbImage.shape[0],
                                   QImage.Format_RGB888)
        convertToQtFormat = QPixmap.fromImage(convertToQtFormat)
        pixmap = QPixmap(convertToQtFormat)
        self.resizeImage = pixmap.scaled(300, 400, Qt.KeepAspectRatio)

        self.label.setPixmap(self.resizeImage)

        self.camera_button.clicked.connect(self.click_picture)
        QApplication.processEvents()

        self.show()

def click_picture(self):  # click picture and close
    img_counter = 0
    while(True):
        ret, frame = cam.read()

        img_name = "opencv_frame_{}.png".format(img_counter)
        cv2.imwrite(img_name, frame)
        printret, frame = cam.read()("{} writtern ".format(img_counter))
        print(printret)
        img_counter += 1


if __name__ == '__main__':
    app1 = QApplication(sys.argv)
    ex2 = camera()
    ex2.show()
    sys.exit(app1.exec_())

任何建议表示赞赏谢谢!

标签: pythonpython-3.xpyqtpyqt5

解决方案


推荐阅读