我们前面一直在说信号,比方说用鼠标按了一下按钮,这样就会产 生一个按钮的单击信号,然后我们可以在相应的槽函数里进行相应功能的设置。其实在按下鼠标后,程序要先接收到鼠标按下的事件,然后将这个事件按默认的设置 传给按钮。可以看出,事件和信号并不是一回事,事件比信号更底层。而我们以前把单击按钮也叫做事件,这是不确切的,不过大家都知道是什么意思,所以当时也 没有细分。
Qt中的事件可以在QEvent中查看。下面我们只是找两个例子来进行简单的演示。
1.还是先建立一个Qt4 Gui Application工程,我这里起名为event。
2.添加代码,让程序中可以使用中文。
即在main.cpp文件中加入#include <QTextCodec>的头文件包含。
再在下面的主函数里添加QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
3.在mainwindow.h文件中做一下更改。
添加#include <QtGui>头文件。因为这样就包含了QtGui中所有的子文件。
在public中添加两个函数的声明
void mouseMoveEvent(QMouseEvent *);
void keyPressEvent(QKeyEvent *);
<