利用qt制作简单的时钟步骤:
1.设置背景颜色
//设置主窗体背景颜色
QPalette palette(this->palette());
palette.setColor(QPalette::Background, Qt::black);
this->setPalette(palette);2.绘制表盘
//绘制表盘刻度
for (int i = 1; i <=60; ++i)
{
painter->save();//保存坐标系
painter->rotate(6*i);//坐标轴顺时针旋转6度
if (i % 5 == 0)//绘制时针刻度
{
painter->drawRect(-2, -202, 4, 4);
painter->fillRect(QRect(-2, -202, 4, 4), QBrush(Qt::white));
painter->drawText(-20, -190, 40, 40,
Qt::AlignHCenter | Qt::AlignTop,QString::number(i/5));
}
else//绘制分针刻度
{
painter->drawPoint(0, -200);
}
painter->restore();//绘制图形后复位坐标系
}3.绘制表针
//时针图形坐标点
const QPoint hourHand[4] = {
QPoint(0, 30),
QPoint(7, 8),
QPoint(0, -80),
QPoint(-7, 8)
};
//分针图形坐标点
const QPoint secondHand[4] = {
QPoint(0, 30),
QPoint(4, 5),
QPoint(0, -125),
QPoint(-5, 6)