[ Qt ] | 与环境相关的执行(二):键盘、定时器、窗口移动和大小
捕获键盘操作:
通过QShortCut 信号槽封装过的,获取按键的方式;大家也能够在更底层的角度,获取用户键盘按下的情况。
keyPressEvent(QKeyEvent* )
modifiers() 键盘修饰符,Ctrl、Alt ...
定时器:
QTimer 实现了定时器特性,在QTimer背后是QTimeEvent定时器事件来支撑的。
QObject提供了一个timerEvent函数,startTimer开启定时器,killTimer关闭定时器。
实现一个10秒的倒计时
1. 拖入LCD Number控件,初始值设置为10
2. 打开定时器事件
timeID是定时器的身边标识,类似于Linux下的共享内存、消息队列的使用ftok()生成的key一样。
3. 重写void timerEvent(QTimerEvent*event) 方法。
我们需要的定时器就是假设程序中有多个定时器,那么他们都可以触发timeEvent事件,于是要求判断timeID,是否
使用timerEvent比QTimer更复杂一些,手动管理timeID,并且呢还要区分timeEvent是哪个定时器引起的。
窗口移动和窗口大小变化
moveEvent
resizeEvent
直接重写方法。