pyqt获得鼠标_PyQt5编程:鼠标事件

本文详细介绍了PyQt5中的鼠标事件处理,包括QMouseEvent类、鼠标事件的响应函数,如mousePressEvent、mouseReleaseEvent和mouseMoveEvent等。通过重写这些函数,可以实现窗口拖动、鼠标指针形状更改、鼠标移进移出控件的响应,以及滚轮事件的处理。此外,还讲解了如何控制鼠标事件的传播和改变鼠标指针形状。
摘要由CSDN通过智能技术生成

一、每个事件都被封装成相应的类:

pyqt中,每个事件类型都被封装成相应的事件类,如鼠标事件为QMouseEvent,键盘事件为QKeyEvent等。而它们的基类是QEvent。

二、基类QEvent的几个重要方法:

accept() 表示事件已处理,不需要向父窗口传播

ignore()表示事件未处理,继续向父窗口传播f

type()返回事件类型,如QtCore.QEvent.MouseButtonPress,一般由基事件调用。因为其它事件已经知道自己的事件类型了。

还有一个自定义事件的注册方法。

三、QMouseEvent鼠标事件:

buttons()返回哪个鼠标按键被按住了。如Qt.LeftButton

globalPos()返回鼠标相对屏幕的位置QPoint

pos()返回鼠标相对处理事件的窗口的位置

四、处理鼠标事件的响应函数(在QWidget及其继承类中):

mousePressEvent(QMouseEvent)

mouseReleaseEvent(event)

mouseMoveEvent(event)

# 事件。

"""重写鼠标事件,实现窗口拖动。"""

def mousePressEvent(self, event):

if event.buttons() == Qt.LeftButton:

self.setCursor(Qt.OpenHandCursor)

self.parent.m_drag = True

self.parent.m_DragPosition =

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值