예제로 배우는 PyQt

예제 중심으로 배우는 PyQt 프로그래밍

예제로 배우는 PyQt 예제 중심으로 배우는 PyQt 프로그래밍

Signal 과 Slot 사용자정의 시그널 반환 값 타입

시그널이 반환할 값의 타입을 명시하고 해당 값을 전달하는 예제

예제보기

댓글

댓글 본문
작성자
비밀번호
  1. 임덕규
    안녕하세요. 해당부분은 원래는 TypeError를 일으키지만
    self.otp_gen.ExpiresIn.connect(lambda v: self.lb_expire_time.setText(str(v)))
    시그널 연결시 위 코드 처럼 lambda를 이용하여 str로 변환하여 넘겨주고 있습니다.

    원래 Slot 타입에 맞게 값을 전해주거나 받을 수 있도록 만들어 주면 되지만 그렇지 못한 경우가 많습니다. 저는 저런 방법으로 해결하고 있습니다.

    감사합니다.
    대화보기
    • JooYeon Kim
      PyQt5(5.9.2)
      pyqt5-tools(5.9.0.1.2)
      이상의 버전을 사용하고 계신다면,

      예제의
      self.expires_in.emit(self.EXPIRE_TIME - t) # 남은 시간을 전달
      이 줄에서 TypeError가 나므로
      emit함수의 인자 self.EXPIRE_TIME - t 를 string 타입으로 변환후 실행하시는 것이 정신 건강에 좋습니다.
    graphittie 자세히 보기