QT事件介绍及实现字体放大缩小(滚轮)
使用update是为了回调paintEvent这个事件函数
pic.load是加载一张图片
setfixedsize(pic.siez())是为了把按键的矩形区域变成和pic一样大
painter.drawPixmap(rec(),pic)就是在按键的矩形区域画一个pic
emit clicked();是用来发送clicked信号的,当然你也可以在事件press里写,这里只不过是把它弄成信号与槽的形式了
MyButton(Qwidget *parent):Qwidget(parent)这里是初始化列表,把传入的参数parent传给Qwidget构造
这里的QTextEdit::keyPressEvent(e)是为了保证重写按下事件后其他的按键输入也能被正常运行,QTextEdit
之所以能正常响应键盘输入,是因为它内部在 keyPressEvent
中处理了各种按键逻辑(如输入字符、光标移动等)。如果你重写了这个函数而没有调用原始的实现,等于把它的默认行为给屏蔽了。
这里如果keypress和keyrelease里不写东西可以导致无法打字
要把其提升为我们自己做的控件
事件过滤器返回true就说明我们已经处理完了,系统不用处理了,如果是false就让系统处理,其实和上面的很一样