鱼C论坛

 找回密码
 立即注册
查看: 2200|回复: 0

[技术原创] 82-Qt'日'常事件(QEvent)-【扫盲】

[复制链接]
发表于 2016-10-14 10:49:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 不二如是 于 2016-10-23 15:56 编辑

0.jpg


Qt中,事件作为一个对象,继承自QEvent类。常见的事件有:

键盘事件QKeyEvent、鼠标事件QMouseEvent、定时器事件QTimerEvent、关闭事件QCloseEvent、输入事件QInputEvent等

事件官方定义是这样的:

The QEvent class is the base class of all event classes. Event objects contain event parameters.

Qt's main event loop (QCoreApplication::exec()) fetches native window system events from the event queue, translates them into QEvents, and sends the translated events to QObjects.

In general, events come from the underlying window system (spontaneous() returns true), but it is also possible to manually send events using QCoreApplication::sendEvent() and QCoreApplication::postEvent() (spontaneous() returns false).

。。。


好吧,其实就是这个意思:

对各种应用程序需要知道的。由应用程序内部或者外部产生的事件或者动作的通称。


Qt中使用一个对象表示一个事件,继承自QEvent类。

需要说明下:

事件与信号不!!!

比如单机下界面上的Btn按钮,那么就会产生QMouseEvent事件,这个事件不是由按钮产生的。

而是因为按钮被按下,会发出clicked()单击信号,这个是由按钮产生的。

一般情况下,我们只关注按钮的单击信号(clicked()),而不考虑鼠标事件。

这是Qt已经封装好的按钮部件。

而如果你要自己设计一个’按钮‘

或者想让单击按钮时触发别的效果,那么就要关心鼠标事件了。

可以看到,事件与信号是两个不同层面的东西,发出着不同,作用也不同。

到现在为止,我们遇到的就是之前讲的拖放事件,想复习,点我就好了~

嗯,就酱~

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 17:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表