我正在开发一款应用程序。我希望有一个缩放选项。为了实现这个功能,我想让程序在同时点击控制键和滚动鼠标时进行缩放(向上滚动进行放大,向下滚动进行缩小)。我已经做了很多搜索和阅读,但只找到了获取控制键按下和鼠标单击事件的方法,而没有找到鼠标滚动事件的方法。我也找到了一种获取鼠标滚动的方法,但不能只通过控制键按下来实现。-并忽略所有其他按键。
请问有人可以提供帮助吗?
请问有人可以提供帮助吗?
这要取决于您应用程序的结构。
获取滚动事件的一种方法是将wheelEvent
处理程序添加到您的小部件中。
def wheelEvent(self, QWheelEvent):
modifiers = QtGui.QApplication.keyboardModifiers()
if modifiers == QtCore.Qt.ControlModifier:
# do your processing
component.viewport().installEventFilter(self)
def eventFilter(self, qobject, event):
if (event.type() == QtCore.QEvent.Wheel) :
modifiers = QtGui.QApplication.keyboardModifiers()
if modifiers == QtCore.Qt.ControlModifier:
#do some scaling stuff
return True
return False
else:
# standard event processing
return False