python - 在 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_())
任何建议表示赞赏谢谢!
解决方案
推荐阅读
- ruby - Ruby 脚本无法打开 SQLite3 文件,但只能在作为守护进程运行时打开
- java - UnboundID LDAP 和 Squid 代理
- parse-server - 为什么带有聚合的日期查询在解析服务器中不起作用?
- javascript - 将计算属性与 Vue Chart js 一起使用时的无限循环
- c# - 按下按钮后如何设置DialogResult?
- angular - Angular,RxJs - 动态新可观察,用户反应为解决方案
- nosql - 保证 DynamoDB 中的创建顺序?
- ios - 将 UILabel 作为子视图添加到 UITextView 时,如何通过编程约束停止“内容大小”约束
- javascript - 在二维数组上使用 Array.map
- c++ - 'struct std::enable_if 中没有名为 'type' 的类型