편집 기록

편집 기록
  • 프로필 편집요청빌런님의 편집
    날짜2020.02.24

    pyqtsignal을 다른 파일의 클래스(QDialog)에 속한 메서드로 보낼 수 있나요?


    from threading import * 
    from socket import *
    from PyQt5.QtCore import Qt, pyqtSignal, QObject
    from client_Divider import * ```
    
    

    대개 import한 헤더 부분은 다음과 같습니다. (client_Divider는 제가 만든거에요)

    Main.py 에서 지금 아래의 코드로 데이터를 보내고, server에 send를 하고 받아온 데이터를 self.recv.recv_signal.emit(msg_return) 이렇게 해서 아래의 self.recv.recv_signal.connect(self.LogIn.LoginCheck) 코드를 이용해서 LogIn클래스의 LogInCheck라는 메서드에 데이터를 보내고 싶은데, LogInCheck(self, msg):로 메서드를 만들었더니, msg에 들어오는 전달인자가 없다라는 에러가 나옵니다.

    parent 클래스로는 데이터가 보내지는 것을 확인 했으나, parent 클래스가 있는 파일 이외에 다른 파일의 클래스로는 데이터를 보낼 수 없는지 궁금합니다.

    class Signal(QObject):  
    
        recv_signal = pyqtSignal(str)
    
    class ClientSocket:
    
        def __init__(self, parent, LogIn):
            self.parent = parent
            self.LogIn = LogIn
            self.recv = Signal()
            self.recv.recv_signal.connect(self.LogIn.LoginCheck) 
            self.bConnect = False
    
  • 프로필 반시님의 편집
    날짜2020.02.24

    pyqtsignal을 다른 파일의 클래스(QDialog)에 속한 메서드로 보낼 수 있나요?


    from threading import * 
    from socket import *
    from PyQt5.QtCore import Qt, pyqtSignal, QObject
    from client_Divider import * ```
    
    

    대개 import한 헤더 부분은 다음과 같습니다. (client_Divider는 제가 만든거에요) Main.py 에서 지금 아래의 코드로 데이터를 보내고, server에 send를 하고 받아온 데이터를 self.recv.recv_signal.emit(msg_return) 이렇게 해서 아래의 self.recv.recv_signal.connect(self.LogIn.LoginCheck) 코드를 이용해서 LogIn클래스의 LogInCheck라는 메서드에 데이터를 보내고 싶은데, LogInCheck(self, msg):로 메서드를 만들었더니, msg에 들어오는 전달인자가 없다라는 에러가 나옵니다. parent 클래스로는 데이터가 보내지는 것을 확인 했으나, parent클래스가 있는 파일 이외에 다른 파일의 클래스로는 데이터를 보낼 수 없는지 궁금합니다.

    
    

    class Signal(QObject):

    recv_signal = pyqtSignal(str)
    

    class ClientSocket:

    def __init__(self, parent, LogIn):
        self.parent = parent
        self.LogIn = LogIn
        self.recv = Signal()
        self.recv.recv_signal.connect(self.LogIn.LoginCheck) 
        self.bConnect = False ```