ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

qt小例子:倒着走的时钟

2020-12-10 15:04:22  阅读:279  来源: 互联网

标签:qt 99 例子 ui str time myWidget include 时钟


效果图,显示当天剩余的时间

 

上代码:

使用了qt form

代码

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>myWidget</class>
 <widget class="QWidget" name="myWidget">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>500</width>
    <height>106</height>
   </rect>
  </property>
  <property name="windowTitle">
   <string>myWidget</string>
  </property>
  <widget class="QLabel" name="label">
   <property name="geometry">
    <rect>
     <x>0</x>
     <y>-10</y>
     <width>491</width>
     <height>111</height>
    </rect>
   </property>
   <property name="font">
    <font>
     <family>Algerian</family>
     <pointsize>72</pointsize>
    </font>
   </property>
   <property name="text">
    <string>99:99:99</string>
   </property>
  </widget>
 </widget>
 <resources/>
 <connections/>
</ui>

关键代码:

#include "mywidget.h"
#include "ui_mywidget.h"
#include <QTimer>
#include <QTime>
#include <stdio.h>

myWidget::myWidget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::myWidget)
{
    ui->setupUi(this);
    QTimer *timer = new QTimer(this);
    connect(timer, &QTimer::timeout, this, &myWidget::showTime);
    ui->label->setText("88:99:77");
    timer->start(1000);

    showTime();
}

void myWidget::showTime()
{
    char  time_str[10]={0};
    int h,m,s;

    QTime time = QTime::currentTime();

    h=23-time.hour();
    m=59-time.minute();
    s=59-time.second();
    sprintf(time_str,"%02d:%02d:%02d",h,m,s);
    QString str = QString(QLatin1String(time_str));
    ui->label->setText(str);
}

myWidget::~myWidget()
{
    delete ui;
}

 

标签:qt,99,例子,ui,str,time,myWidget,include,时钟
来源: https://www.cnblogs.com/bliss-/p/14115060.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有