Qt练习之自定义时钟
2015-10-14 20:59
453 查看
在QtProject中自学Qt时,上面有一个实例是编写时钟的,其中用到了QTimer,信号和槽以及事件的知识,是练习Qt的好例子,本人在实例上添加了秒钟的设置,从而更加像一个使用的时钟表了,下面展示一下运行结果。
下面我来和大家分享一下,具体实现,类AnalogClock是自定义类,它继承于QWidget类,下面代码是定义类的构造函数,在其中我定义了一个QTimer类,并为Timer对象添加了信号和槽,槽函数update()每执行一次,都将会调用下面我定义的paintEvent()函数(paintEvent()函数是一个虚函数,我在自定义类中实现重写了它,函数内容将在下面为大家讲到)。
一下都是paintEvent()函数内容,下面定义了三个Qpoint 数组,在时钟里分别代表小时,分钟,秒的走针,再定义三个QColor对象,分别为下面小时,分钟,秒走针
设置颜色,
获得当前时间值,并创建了painter对象,translate()函数是将Vector(dx,dy)转换为坐标系统,
下面设置画刷和画笔,分别画出小时的走针和小时的刻度盘其中rotate()函数表示顺时针旋转坐标系统,参数表示旋转的角度,drawConvexPolygon()函数表示画出凸多边形,
下面设置画刷和画笔,分别画出分钟的走针和分钟的刻度盘
下面是本人根据小时和分钟添加的秒钟的编写,其中需要注意的是秒钟的刻度盘的需要旋转的角度,
以上是更具QtProject中的实例改编。
下面我来和大家分享一下,具体实现,类AnalogClock是自定义类,它继承于QWidget类,下面代码是定义类的构造函数,在其中我定义了一个QTimer类,并为Timer对象添加了信号和槽,槽函数update()每执行一次,都将会调用下面我定义的paintEvent()函数(paintEvent()函数是一个虚函数,我在自定义类中实现重写了它,函数内容将在下面为大家讲到)。
一下都是paintEvent()函数内容,下面定义了三个Qpoint 数组,在时钟里分别代表小时,分钟,秒的走针,再定义三个QColor对象,分别为下面小时,分钟,秒走针
设置颜色,
获得当前时间值,并创建了painter对象,translate()函数是将Vector(dx,dy)转换为坐标系统,
下面设置画刷和画笔,分别画出小时的走针和小时的刻度盘其中rotate()函数表示顺时针旋转坐标系统,参数表示旋转的角度,drawConvexPolygon()函数表示画出凸多边形,
下面设置画刷和画笔,分别画出分钟的走针和分钟的刻度盘
下面是本人根据小时和分钟添加的秒钟的编写,其中需要注意的是秒钟的刻度盘的需要旋转的角度,
以上是更具QtProject中的实例改编。
相关文章推荐
- 我的Qt學習日記 DAY 2 Qt 開發環境
- PyQt4环境搭建与使用
- QT5入门之2 - HelloWorld
- 编译x11版本qt
- QT5入门之1 - QT下载与安装
- Qt使用问题总结
- 基于Qt的图像处理技术和算法
- 在QT中使用哈希表存储数据
- Qt arm嵌入式交叉编译环境搭建
- MQTT连接服务器发送和接收数据
- Windows下发布Qt程序
- log4qt使用示例
- Qt5.5.0 MinGW492_32 release静态版编译
- pyqt的基本组件
- [分享]Hi3520,Hi3515,HI3531上移植和运行QT4.8.6
- 我的Qt學習日記 DAY 1 Qt 简介
- Graphics View Framework 简介
- 自学QT之获取目录下的全部文件并且添加到tablev中
- 自学QT之歌曲列表
- QT中窗口刷新事件的学习总结