QT环境下使用QGraphicsProxyWidget实现日期时间的动态显示

在Qt开发中,不使用UI设计,而是通过QGraphicsProxyWidget和定时器实现在GraphicsView中动态显示日期时间。代码实现中,主要继承GraphicsView,并设置场景,每秒更新QLabel中的日期时间,展示时间与日期。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Qt环境下使用动画效果动态显示日期时间:
1,大部分的实现方式是使用ui设计,直接加载datetime的label;(关于这部分,帖子很多,不在详细描述)。
2,在开发过程中没有使用到.ui设计,所以想将datetime的label动态显示,测试后,通过GraphicsView里的QGraphicsProxyWidget进行实现,将Qlabel中的datetime,定时器每隔1s刷新一次。

代码实现:

主体类继承GraphicsView,并通过GraphicsView.setScene()显示。

(注,以下代码只摘抄主要实现部分,其余自行补充实现)

#include <QGraphicsScene>
#include <QLabel>
#include <QObject>

QGraphicsProxyWidget *TimeWidget_; 
QGraphicsProxyWidget *DateWidget_; 
QLabel *TimeLabel_; 
QLabel *DateLabel_; 

QTimer *dtTimer_ = new QTimer(); 
connect(dtTimer_, SIGNAL(timeout()), this, SLOT(OndtTime())); 
dtTimer_->setTimerType(Qt::PreciseTimer); 
dtTimer_->setInterval(1000); 
dtTimer_->start(); 

void OndtTime() 
{     
    if(TimeLabel_)     
    {
         SAFE_RELEASE(TimeLabel_);
         TimeWidget_ = NULL;
    }
    if(DateLabel_)
    {
         SAFE_RELEASE(DateLabel_);
         DateWidget_ = NULL;
    }
    QString format_ = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值