如何解决此错误“对象没有属性”

错误:self.START.clicked.connect(self.StartClicked)

AttributeError:“代码”对象没有属性“StartClicked”

这是我的代码。我不知道我在这段代码中哪里错了,请你检查一下并纠正我哪里错了。

当我尝试在没有 GUI 的情况下运行代码时,它工作正常,但使用 QT 时,它给了我这个错误。

import sys

import cv2

import datetime


from PyQt5.QtWidgets import QApplication ,QDialog

from PyQt5.uic import loadUi

from PyQt5.QtGui import QImage,QPixmap

from PyQt5.QtCore import pyqtSlot



class code(QDialog):

   def __init__(self):

        super(code,self).__init__()

        loadUi('letst.ui',self)

        self.logic =0


        self.START.clicked.connect(self.StartClicked)

        self.STOP.clicked.connect(self.StopClicked)

@pyqtSlot()

def StartClicked(self):


        self.logic=1

        fourcc = cv2.VideoWriter_fourcc(*'XVID')

        date=datetime.datetime.now()

        cap = cv2.VideoCapture(1)

        out= cv2.VideoWriter('E:/project/videos/rec_%s%s%s%s%s%s.mp4' %(date.year,date.month,date.day,date.hour,date.minute,date.second),fourcc,20.0,(640,480))



        while (cap.isOpened()):


                ret,frame = cap.read()

                if ret == True:

                        self.displayImage(frame,1)

                        cv2.waitKey()


                        if  (self.logic==1):

                                out.write(frame)

                        if (self.logic==0):

                                break

                else:

                    print('return not found')

                cap.release()

                out.release()

                cv2.destroyAllWindows()


def StopClicked(self):

    self.logic=0

def displayImage(self, img,window=1):

    qformat = QImage.Format_Indexed8


    if len(img.shape)==3:

        if (img.shape[2])==4:

            qformat=QImage.Format_RGBA888


        else:

            qformat=QImage.Format_RGB888

    img =QImage(img, img.shape[1],img.shape[0],qformat)

    img =img.rgbSwapped()

    self.imglabel.setPixmap(QPixmap.fromImage(img))

    self.imgLabel.setAlignment(QtCore.Qt.AlignHCenter | Qtcore.Qt.AlignVCenter)



摇曳的蔷薇
浏览 274回答 1
1回答

POPMUISE

以下函数应该在类中:def StartClicked(self):def StopClicked(self):def displayImage请更正缩进并尝试。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python