Qt实现一个简单的钟表

本文通过Qt框架,详细介绍了如何实现一个简单的钟表应用。首先,选用一张图片作为背景,接着利用Qt的绘图功能绘制时针、分针和秒针,再绘制表盘。最后,借助QTimer每秒更新一次显示,以达到动态效果。提供了dialog.h和dialog.cpp关键代码片段。
摘要由CSDN通过智能技术生成

效果图

在这里插入图片描述

实现思路

1.先插入一张自己喜欢的图片当背景。
2.调用绘图函数画出时针,分针,秒针。
3.调用绘图函数画出表盘。(如果图片有表盘也可以不画)
4.用QTimer设定时间,使钟表一秒钟刷新一次。

代码分享

dialog.h

#ifndef DIALOG_H
#define DIALOG_H

#include <QDialog>
#include<QPen>

QT_BEGIN_NAMESPACE
namespace Ui {
    class Dialog; }
QT_END_NAMESPACE

class Dialog : public QDialog
{
   
    Q_OBJECT

public:
    Dialog(QWidget *parent = nullptr);
    ~Dialog();
    void paintEvent(QPaintEvent* event);
    static const QPoint hourHand[4];
    static const QPoint minuteHand[4];
    static const QPoint secondHand[4];
    QPen hourHandPen;
    QPen minuteHandPen;
    void drawHourHand(QPainter *painter);
    void drawMinuteHand(QPainter *painter);
    void drawsecondHand(QPainter *painter);
    void drawClockDial(QPainter *painter);

private:
    Ui::Dialog *ui;
};
#endif // DIALOG_H

dialog.cpp

#include "dialog.h"
#include "ui_dialog.h"
#include<QPixmap>
#include<QPainter>
#include<QTimer>
#include<QTime>
const QPoint Dialog::hourHand[4] = {
   
    QPoint(2, 10),
    QPoint(-2, 10),
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值