100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > python自定义事件event的含义_pyqt自定义事件学习出现问题

python自定义事件event的含义_pyqt自定义事件学习出现问题

时间:2019-06-05 19:32:50

相关推荐

python自定义事件event的含义_pyqt自定义事件学习出现问题

该楼层疑似违规已被系统折叠隐藏此楼查看此楼

from PyQt4.QtGui import *

from PyQt4.Qt import *

from PyQt4.QtCore import *

import sys

#第一种,自定义控件,使用重新实现特定事件处理器,派生一个组件,重新实现它的事件处理,主要使用mousePressEvent、mouseReleaseEvent以及mouseMoveEvent这三个事件处理

class MyBuuton(QPushButton):

def __init__(self,parent=None):

super(MyBuuton,self).__init__(parent)

def mousePressEvent(self,event):

self.setText(QString(*x:%1,y:%2*).arg(QString.number(event.x())).arg(QString.number(event.y())))

def mouseReleaseEvent(self, event):

self.setText(QString(*x:%1,y:%2*).arg(QString.number(event.x())).arg(QString.number(event.y())))

def mouseMoveEvent(self, event):

self.setText(QString(*x:%1,y:%2*).arg(QString.number(event.x())).arg(QString.number(event.y())))

def event(self, e):#看下&&

if e.type()==QEvent.MouseButtonPress:

event=MyBuuton(e)

self.setText(QString(*x:%1,y:%2*).arg(QString.number(event.x())).arg(QString.number(event.y())))

return True

elif e.type()==QEvent.MouseButtonPress or e.type()==QEvent.MouseMove:#屏蔽MouseButtonRelease和MouseMove事件

return True

return QPushButton.event(e)#其他事件调用基类的event()函数进行处理

QTextCodec.setCodecForTr(QTextCodec.codecForName(*utf-8*))

app =QApplication(sys.argv)

x = MyBuuton()

x.setWindowTitle(u*处理器*)

x.resize(400,200)

x.show()

app.exec_()

显示错误:

return QPushButton.event(e)#其他事件调用基类的event()函数进行处理

TypeError: QPushButton.event(QEvent): first argument of unbound method must have type *QPushButton*

学习地方:/venow/archive//10/10/2718019.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。