当前位置: 首页 > news >正文

做动漫图片的网站wordpress变微软雅黑

做动漫图片的网站,wordpress变微软雅黑,网页设计与制作总结和体会,网站建设费用是否资本化【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 倒计时软件是生活中经常遇到的一种场景。比如运动跑步,比如学校考试,比如论文答辩等等,只要有时间限制规定的地…

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        倒计时软件是生活中经常遇到的一种场景。比如运动跑步,比如学校考试,比如论文答辩等等,只要有时间限制规定的地方,我们都会遇到倒计时的一些设备。目前在电商网站上面,可以找到很多这类的倒计时工具,不过既然我们学习了QT平台,那么完全可以用它来实现一个简单的倒计时软件。

        为了简单演示一下,我们设计了AA:BB的形式,其中AA代表分钟,BB代表秒。启动之后,每隔1s,BB会递减1,如果不够,就会从AA借数。等到AA和BB变成00之后,会有一个弹窗弹出来。整个逻辑就是这么一个过程。

1、设计界面

        界面部分前面也说过,就是使用AA:BB的部分来完成的。所以,为了方便,就直接用qt designer来设计即可,

        截图上来看,中间显示部分字体偏小。不过没有关系,这部分后期可以通过编码的方法来进行解决。

2、QtWidgetsApplication1.h中添加变量和回调函数

        所谓变量,主要就是定时器和初始值。而回调函数,则是每次定时器调用的子函数。这部分和之前的按钮回调函数一样,也是槽函数,所以也会多一个关键字slots。此外,我们把字符的更新动作也单独设计成了一个函数display_number。

#pragma once#include <QtWidgets/QMainWindow>
#include <QTimer>
#include "ui_QtWidgetsApplication1.h"class QtWidgetsApplication1 : public QMainWindow
{Q_OBJECTpublic:QtWidgetsApplication1(QWidget *parent = nullptr);~QtWidgetsApplication1();private:Ui::QtWidgetsApplication1Class ui;QTimer* p_timer;int total;void display_number();private slots:void update();
};

3、QtWidgetsApplication1.cpp功能实现

        要实现倒计时的功能,首先肯定要初始化好构造函数。前面我们说过,在类定义里面会添加一些变量,那么在类开始构造的时候,就要初始化这些变量,这就包括了定时器和初始值。另外,因为整体字体比较小,这里也一并处理了一下。

#include <QApplication>
#include <QPushButton>
#include <QMessageBox>
#include "QtWidgetsApplication1.h"QtWidgetsApplication1::QtWidgetsApplication1(QWidget *parent): QMainWindow(parent)
{ui.setupUi(this);//set fontQFont ft;ft.setPointSize(20);ui.label_1->setFont(ft);ui.label_2->setFont(ft);ui.label_3->setFont(ft);ui.label_4->setFont(ft);ui.label_5->setFont(ft);// set total valuetotal = 1800;// set timerp_timer = new QTimer(this);connect(p_timer, SIGNAL(timeout()), this, SLOT(update()));p_timer->start(1000); // 1000 is intervaldisplay_number();
}// destructor function
QtWidgetsApplication1::~QtWidgetsApplication1()
{if (p_timer){delete p_timer;}
}

        如代码所示,这里创建了一个周期为1000ms的定时器,它的回调函数是update,初始值是1800。所以,根据这些信息,我们继续查看定时器的回调函数update,

// timeout callback function
void QtWidgetsApplication1::update()
{total -= 1;display_number();if (total == 0){p_timer->stop();delete p_timer;p_timer = NULL;QMessageBox::information(this, "tip", "Timeout!");}
}

        回调函数update的逻辑还是很清晰的,每1s递减1,直到数值为0结束。这个时候,停止定时器、删除定时器、跳出弹框。当然,每次更新数值后,更新数值也是必不可少的,所以这里还有一个display_number的函数。

// shou data here
void QtWidgetsApplication1::display_number()
{ui.label_1->setText(QString::number((total / 60) / 10));ui.label_2->setText(QString::number((total / 60) % 10));ui.label_3->setText(QString::number((total % 60) / 10));ui.label_4->setText(QString::number((total % 60) % 10));
}

        display_number的内容比较简单,首先计算分钟的十分位和个位,接着计算秒钟的十分位和个位。最后把这些数值贴到label1、label2、label3、label4上面,这样就达到了数值更新的效果。

4、测试和验证

        测试的话就比较简单,直接编译后启动即可。首先查看数字是否发生跳变。

        如果ok,再检验超时之后是否有弹窗,一切都没有问题的话就可以了。反之,就要回头debug,单步调试下,看看问题出在哪。

http://www.yayakq.cn/news/767148/

相关文章:

  • 网站运营优化培训深圳市广告传媒有限公司
  • 查询公司的网站备案信息查询广州网站建设gzzhixun
  • 怎么做手机版网站中国最著名的40个建筑
  • 有哪些做的好看的网站视频剪辑在哪里学
  • 凡科建站网站怎样做软件下载自有电脑做网站服务器
  • 广东建设工程注册中心网站郑州网站排名优化公司
  • 网站备案地区黄山seo排名优化技术
  • 申请免费网站需要什么条件建设网站需要营业执照吗
  • 昆明网站定制开发发卡网站源码下载
  • 网站备案 材料嘉兴企业网络营销推广平台
  • 长沙营销网站设计网站开发浏览器兼容性
  • 建网站租服务器多少钱库存网站建设定制
  • 深圳网站建设服务清单wordpress替换dede
  • 网站建设公司shundeit网页制作工具教程
  • 新密做网站网站二维码代码
  • h5响应式网站开发90后做网站月入万元
  • 四川网站制作中装建设重组消息
  • 阿里云做电影网站宽带
  • 高清做网站插图魅影视频
  • 各种网站解决方案深圳小程序开发设计
  • 新浪微博可以做网站吗ppt链接网站怎么做
  • 网站建站图片建e网ai渲图插件
  • 怎样模仿别人的网站建设网站如何给页面命名
  • 网络服务器价格温州百度推广排名优化
  • seo发布专员招聘页面优化
  • 本地网站可以做吗购买域名后如何建立网站
  • 什么叫个人网站软件手机html编辑器
  • 集运网站建设西安网络公司
  • 网站建设登录上海政策最新规定
  • 网站地图怎样做安庆做网站的公司