[PYTHON] 왜 PyQt connect () 구문이 그렇게 장황합니까?
PYTHON왜 PyQt connect () 구문이 그렇게 장황합니까?
나는 단지 PyQt를 배웠고 Signals and Slots 메커니즘을보고 있습니다. 나는 장황한 구문에 약간 당황 스럽다. 왜 우리는 :
self.connect(dial, SIGNAL("valueChanged(int)"), spinbox.setValue)
나는 다음과 같이 쓰는 것을 선호한다.
self.connect(dial.valueChanged, spinbox.setValue)
누구든지 connect () 구문을 명시 적 / 상세하게 사용해야하는 이유를 말해 줄 수 있습니까?
해결법
-
==============================
1.덜 장황한 PyQt의 새로운 스타일의 신호를 사용할 수 있습니다 :
덜 장황한 PyQt의 새로운 스타일의 신호를 사용할 수 있습니다 :
self.connect(dial, SIGNAL("valueChanged(int)"), spinbox.setValue)
된다.
dial.valueChanged.connect(spinbox.setValue)
-
==============================
2.Luper의 대답은 이것보다 훨씬 낫지 만, 완벽을 기하기 위해 ...
Luper의 대답은 이것보다 훨씬 낫지 만, 완벽을 기하기 위해 ...
추악한 "오래된 스타일"문법은 C ++ 세상에서의 시대 착오적 인 표현입니다 - 사람들이 사용하는 문법을 살펴보십시오! 불쾌한...
-
==============================
3.더 짧은 방법은 생성자의 키워드 인수에서 함수에 신호 이름을 지정하는 것입니다. QDial (valueChanged = spinbox.setValue). PyQt는 자동으로 valueChanged () 신호를 spinbox.setValue ()에 연결합니다.
더 짧은 방법은 생성자의 키워드 인수에서 함수에 신호 이름을 지정하는 것입니다. QDial (valueChanged = spinbox.setValue). PyQt는 자동으로 valueChanged () 신호를 spinbox.setValue ()에 연결합니다.
from https://stackoverflow.com/questions/4031489/why-is-pyqt-connect-syntax-so-verbose by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 큰 출력을 읽을 때 Paramiko 채널이 멈 춥니 다. (0) | 2018.11.28 |
---|---|
[PYTHON] matplotlib를 사용하는 코드에 대해 단위 테스트를 작성하려면 어떻게해야합니까? (0) | 2018.11.28 |
[PYTHON] sklearn : 다항식의 계수를 구하는 방법 (0) | 2018.11.28 |
[PYTHON] Python - 목록의 목록에서 항목의 색인 찾기 (0) | 2018.11.28 |
[PYTHON] 래핑 된 함수 앞과 뒤에 어떤 코드를 실행하는 함수와 멤버 함수 위에 래퍼를 쓰는 방법? (0) | 2018.11.28 |