自定义窗口部件的一个最简单的方法就是对Qt提供的窗口部件进行子类化,也可以直接从QWidget子类化。
将类从QWidget继承,然后实现QWidget里声明的虚函数,从而对事件进行响应。几个比较重要的虚函数是:
virtual void mousePressEvent(QMouseEvent *);
virtual void mouseReleaseEvent(QMouseEvent *);
virtual void mouseDoubleClickEvent(QMouseEvent *);
virtual void mouseMoveEvent(QMouseEvent *);
virtual void keyPressEvent(QKeyEvent *);
virtual void keyReleaseEvent(QKeyEvent *);
virtual void paintEvent(QPaintEvent *);
更多的函数声明,可以再qwidget.h中找到。