#include "Clock.h"
Clock::Clock()
{
this->year = 0;
this->month = 0;
this->day = 0;
this->hour = 0;
this ->min = 0;
this->sec = 0;
this->dial = new Dial();
this->hPointer = new Pointer();
this->mPointer = new Pointer();
this->sPointer = new Pointer();
}
Clock::~Clock()
{
delete dial;
delete hPointer;
delete mPointer;
delete sPointer;
dial = NULL;
hPointer = NULL;
mPointer = NULL;
sPointer = NULL;
}
void Clock::setPosition(QPoint position)
{
this->position = position;
}
void Clock::setSize(int size)
{
this->size = size;
}
void Clock::setTime(const int& year,const int& month,const int& day,
const int& hour,const int& min,const int& sec)
{
this->year = year;
this->month = month;
this->day = day;
this->hour = hour;
this->min = min;
this->sec = sec;
}
void Clock::paintDial(QPainter* const &painter)
{
dial->setPosition(this->position);
dial->setSize(this->size - 10);
dial->paint(painter);
}
void Clock::paintSecPointer(QPainter* const &painter)
{
QColor color(0,222,100);
this->sPointer->setColor(color);
this->sPointer->setLength(100);
this->sPointer->setPoint(this->position);
this->sPointer->setTheta(0.5);
this->sPointer->setAngle((this->sec*6+270)%360);
this->sPointer->paint(painter);
}
void Clock::paintMinPointer(QPainter* const &painter)
{
QColor color(240,12,12);
this->mPointer->setColor(color);
this->mPointer->setLength(80);
this->mPointer->setPoint(this->position);
this->mPointer->setTheta(1);
this->mPointer->setAngle((this->min*6+270)%360);
this->mPointer->paint(painter);
}
void Clock::paintHourPointer(QPainter* const &painter)
{
QColor color(121,121,12);
this->mPointer->setColor(color);
this->mPointer->setLength(50);
this->mPointer->setPoint(this->position);
this->mPointer->setTheta(2);
this->mPointer->setAngle((int)(this->hour*30+this->min*0.5+270)%360);
this->mPointer->paint(painter);
}
void Clock::paint(QPainter* const &painter)
{
this->paintDial(painter);
this->paintSecPointer(painter);
this->paintMinPointer(painter);
this->paintHourPointer(painter);
}
QT 时钟显示 linux
5星 · 超过95%的资源 需积分: 10 93 浏览量
2009-11-12
16:06:50
上传
评论 1
收藏 171KB RAR 举报
deng283273335
- 粉丝: 0
- 资源: 4
最新资源
- 基于ROS的点焊机器人仿真与控制python源码+文档说明+使用说明+详细注释
- 基于vue实现的细粒度交通时空大数据分析系统+源代码+文档说明
- 安卓大作业-基于Electron的交通时空大数据分析挖掘系统客户端(Android)+源代码+文档说明+界面截图
- 基于Java的朱氏集团客户关系管理系统设计源码
- 基于C++的作业提交与批改系统设计源码
- 基于Vue2的移动端电影资讯网站设计源码
- 高分课程设计作业-基于QT的模仿宝石迷阵游戏C++源码+文档说明+界面截图
- 基于Apache Spark的Spark DistCP重实现设计源码
- 粤港澳大湾区(黄埔)算法算例大赛-工业表面缺陷检测源码+超详细注释
- 在 KolektorSDD 数据上使用分割决策网络进行表面缺陷检测python源码+文档说明
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈