Qt 애플리케이션에서 나는 QCalendarWidget
을 사용하고 있습니다. 마우스가 새 셀에 들어갈 때 알림을 받고 싶습니다. 나는 QCalendarWidget
내부 QAbstractItemView에서 상속 이는 QTableView
를 사용하고 있음을 알고이는 entered
신호를 가지고 : 마우스 커서가 항목을 인덱스로 을 지정 들어갈 때PyQt : 셀이 QCalendarWidget에 입력되었을 때 신호를 내 보냅니다.
나는 다음과 같은 코드를 사용하여 신호를 수신하기 위해 노력 :이 신호가 방출된다. 이 기능을 사용하려면 마우스 추적을 활성화해야합니다.
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
class MyCalendar:
def __init__(self):
app = QApplication(sys.argv)
window = QMainWindow()
cal = QCalendarWidget(window)
window.resize(320, 240)
cal.resize(320, 240)
table = cal.findChild(QTableView)
table.setMouseTracking(True)
table.entered.connect(self.onCellEntered)
window.show()
sys.exit(app.exec_())
def onCellEntered(self, index):
print("CellEntered")
if __name__ == "__main__":
window = MyCalendar()
을하지만 내 콜백 함수가 호출되지 않습니다. 왜 그런 생각이 드나요?
그것은 좋은 것 : 여기
는 것을 구현하는 데모 스크립트입니다. –@ GeorgSchölly 질문에있는 코드를 'QCalendarWidget'을 보여주는 작업 창 응용 프로그램으로 업데이트했지만 신호가 연결되었지만'onCellEntered' 메서드는 호출되지 않습니다. – Cilenco