【Qt作业】绘制简单的时钟

这篇博客介绍了如何使用Qt库来绘制一个简单的时钟,包括设置时针、分针和秒针的偏转角度,以及绘制刻度盘。通过利用QtPen设置颜色,translate()方法调整坐标原点,并根据系统时间计算角度,实现时钟指针的动态显示。同时,提到了参考的资源链接。
摘要由CSDN通过智能技术生成

预览如下

## **代码部分** **头文件**
#ifndef CLOCK_H
#define CLOCK_H

#include <QWidget>
#include <QPixmap>
#include <QBitmap>
#include <QPainter>
#include <QPaintEvent>
#include <QTime>
#include <QPaintEvent>
#include <QPainter>
#include <QTimer>
#include <QPen>
#include <QFont>

class Widget : public QWidget
{
   
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
    void mousePressEvent(QMouseEvent *event);
    void mouseMoveEvent(QMouseEvent *event);
    void paintevent(QPaintEvent * event);

private:
    QPixmap pix;
    QPoint dragPosition;
    static const QPoint hourHand[4];
    static const QPoint minuteHand[4];
    static const QPoint secondHand[4];
    QFont font;
    QPen pen1;
    QPen pen2;
    QPen pen3;
    QPen pen4;
protected:
    void paintEvent(QPaintEvent *);
    void drawHourHand(QPainter *painter);
    void drawMinuteHand(QPainter *painter);
    void drawsecondHand(QPainter *painter);
    void drawClockDial(QPainter *painter);
    void drawOuterCircle(QPainter *painter);

};

#endif // CLOCK_H

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
   
    pen1.setStyle(Qt::SolidLine);//分针刻度画笔
    pen1.setWidth(1);
    QColor penColor(72,61,139,255);
    pen1.setBrush(penColor);

    pen2.setStyle(Qt::SolidLine);//时针刻度画笔
    pen2.set
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值