2011年1月17日

Qt事件处理器(二)——特殊情况处理

摘要: Qt提供了5个级别的事件处理和事件过滤方法。1.重新实现像mousePressEvent()这样的事件处理器。这事最常用的。2.子类化QApplication并且重新实现notify()。QApplication::notify()用来给接收者发送一个指定事件。这种方法每次只能激活一个子类的event()函数去处理事件。3.在qApp中注册事件过滤器,那么应用程序中的每个对象的每个事件都会在发送到其他事件过滤器之前,先发送给这个eventFilter()函数。它也可以用来处理那些发送 给失效窗口部件的鼠标事件。4.重新实现QObject::event(),可以再这些事件到达特定的事件处理器之前 阅读全文

posted @ 2011-01-17 21:01 ActiveChange 阅读(2639) 评论(0) 推荐(1)

Qt事件处理器(一)——事件监视器

摘要: Qt事件模型是一个非常强大的功能。在事件模型中,可以通过设置监视器,监视发送给所有子部件的事件,并在监视代码中实现所需的行为。创建一个事件过滤器包括两个过程:1.通过对目标对象调用installEventFilter()来注册监视对象。2.在监视对象的eventFilter()函数中处理目标对象的事件。形式:lineEdit-installEventFilter(obj); obj-eventFilter(QObject* watchedObj, QEvent* event); lineEdit-removeEventFilter(obj);其中lineEdit是被监视对象,obj是监视 阅读全文

posted @ 2011-01-17 20:21 ActiveChange 阅读(1907) 评论(0) 推荐(0)

编写整洁的代码(一)

摘要: 能编写整洁的代码是衡量一个程序员能力的标准之一。所谓整洁的代码,我认为至少应该是可读性高,没有多余的代码,逻辑清晰,即使刚接触代码的人来读,也能很容易理解的代码。为了给自己总结总结,决定写一写这方面的体会。在一般的项目中,往往存在很多的分支和条件判断语句。往往一开始时,代码的逻辑比较清晰简单,但随着需求的增加和变更,模块中的分支就会多起来,而且开发人员往往由于发布时间所限,往往都是实现了机能就算完了。但这样的代码往往在今后的维护和变更时需要开发人员,维护人员付出大量的时间和精力去理解它。所以,除了在开发时,注意及时重构外,我们要思考解决这类问题的方法。在之前做过一些项目中,特别是嵌入式的项目, 阅读全文

posted @ 2011-01-17 00:52 ActiveChange 阅读(233) 评论(0) 推荐(0)

导航