Qt学习(五)-----自定义电子时钟

一、自定义电子时钟的实现
自己参照(http://blog.csdn.net/yiyaaixuexi/article/details/6747737),然后自己琢磨实现了一下,在ui设计器上添加几个6个Button(显示数字)和两个label(“:”);通过setIcon设置图标,将图片显示到Button上

二、代码实现

1、新建项目Clock,基类选择Widget
这里写图片描述

2、将所需的图片复制到工程目录下

这里写图片描述

3、widget.h

添加

private slots:
    void  showTimeSlot();//显示时间

4、widget.cpp

在析构函数添加

QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(showTimeSlot()));
timer->start(1000);
showTimeSlot();

添加自定义函数

void Widget::showTimeSlot(){
    //lcd
       QTime time = QTime::currentTime();
       QString text = time.toString("hh:mm:ss");

       ui->label_3->setText(text);

       //ourclock
       ui->hourh->setIcon(QPixmap(this->getPngName(text[0])));
       ui->hourl->setIcon(QPixmap(this->getPngName(text[1])));
       ui->minh->setIcon(QPixmap(this->getPngName(text[3])));
       ui->minl->setIcon(QPixmap(this->getPngName(text[4])));
       ui->sech->setIcon(QPixmap(this->getPngName(text[6])));
       ui->secl->setIcon(QPixmap(this->getPngName(text[7])));
}

QString Widget::getPngName(QChar x)
{
     return "../Clock/"+(x+QString(".png"));//获取图片路径

}

三。运行结果

这里写图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值