반응형
<질문>
저는 PyQt를 배우고 신호 및 슬롯 메커니즘을보고 있습니다. 나는 장황한 구문에 약간 당황합니다. 왜 우리는 :
self.connect(dial, SIGNAL("valueChanged(int)"), spinbox.setValue)
다음을 작성하는 것을 선호합니다.
self.connect(dial.valueChanged, spinbox.setValue)
누구든지 connect () 구문이 왜 그렇게 명시적이고 장황해야하는지 말해 줄 수 있습니까?
<답변1>
PyQt를 사용할 수 있습니다.new style signals덜 장황합니다.
self.connect(dial, SIGNAL("valueChanged(int)"), spinbox.setValue)
된다 :
dial.valueChanged.connect(spinbox.setValue)
<답변2>
Luper의 대답은 이것보다 훨씬 낫지 만 완전성을 위해 ...
그만큼추한"오래된 스타일"구문은C++
세상-그 사람들이 작업해야하는 구문을보세요!Yucky...
<답변3>
더 짧은 방법은 생성자의 키워드 인수에서 함수에 신호 이름을 할당하는 것입니다.QDial(valueChanged=spinbox.setValue)
. PyQt는 자동으로valueChanged()
신호를 보내다spinbox.setValue()
.
반응형
'개발 > Python' 카테고리의 다른 글
[파이썬] PyQT의 클래스간에 pyqtSignal을 연결하는 방법 (0) | 2021.01.11 |
---|---|
[파이썬] pyqtSlot으로 연결된 슬롯을 장식해야하는 이유는 무엇입니까? (0) | 2021.01.11 |
[파이썬] PyQt에서 QThread가있는 백그라운드 스레드 (0) | 2021.01.10 |
Python 파일을 가져올 때 대시(-)를 사용해도 괜찮습니까? (0) | 2021.01.10 |