第7章 事件处理 |
发布: 2008-08-12 23:14 |
事件是由窗口系统或者Qt自己产生以响应不同事件。当用户按下或者翻译一个键盘键或者鼠标键时,一个键盘或者鼠标事件被生成。当窗口首次显示时,一个绘图事件被生成认告诉新的可见窗口它需要重绘自己。大多数事件被生成以响应用户的行为,但也有些,像计时器事件,是由系统独立生成的。 当我们使用Qt编程的时候,我们几乎不需要考虑事件,因为当标志性事件发生时,Qt的物件会发射信号。当我们编写自定义物件或者我们想修改现有Qt物件的行为时事件变得非常有用。 事件应该不会与信号冲突。有一个规则是:在使用物件的时候信号比较有用,而在实现物件的时候事件比较有用。例如,当我们使用QPushButton的时候,我们对它的clicked()信号更感兴趣而不是导致信号被发射的底层的鼠标或者键盘事件。但是如果我们在实现一个像QPushButton的类,我们就需要编写处理鼠标和键盘事件的代码并在必要的时候发射clicked()信号。 |
原文: http://qtchina.tk/?q=node/233 |
Powered by zexport
|