프로그래밍/python
pyside6 Event Filter
코끼리_땃쥐
2023. 12. 13. 15:23
반응형
라벨 같은 위젯은 Click 시그널이 없기때문에 이벤트 필터를 정의해서 사용할수 있다.
(응용하면 여러가지 가능)
def Click(widget):
class Filter(QObject):
Clicked= Signal()
def eventFilter(self, watched: QObject, event: QEvent) -> bool:
if watched == widget and event.type() == QEvent.MouseButtonPress:
self.Click.emit()
return True
return False
filter = Filter(widget)
widget.installEventFilter(filter)
return filter.Click
Click(self.lable).connect(self.label_click)
사용하면된다.
반응형