QDateTime类,头文件#include <QDateTime>
可以使用QDateTime类来获得系统时间。通过QDateTime::currentDateTime()来获取本地系统的时间和日期信号。可以通过date()和time()来返回
datetime中的日期和时间部分,代码如下:
QDateTime *datetime=new QDateTime(QDateTime::currentDateTime());
QString s=datetime->date().tostring();
void Dialog::add()
{
QDateTime *datetime=new QDateTime(QDateTime::currentDateTime());
QString tmp=datetime->date().toString();
label1->setText(tmp);
}
QTimer类
定时器(QTimer)的使用非常简单,只需要一下几个步骤就可以完成定时器的应用。
新建一个定时器
QTimer *time_clock=new QTimer(this);
连接这个定时器的信号和槽,利用定时器的timeout()。
connect(time_clock,SIGNAL(timeout()),this,SLOT(slottimedone()));
time_clock->start();
开启定时器,并设定定时周期
--定时器定时有两种方式,start(int time)和setSingleShot(true),其中,start(int time)表示每隔"time"秒就会重启定时器,
可以重复触发定时,利用stop()将定时器关掉,二setSingleShot(true)则是仅启动定时器一次,工程中常用的是前者。
#include "dialog.h"
#include <QGridLayout>
#include <QDateTime> //构造函数
Dialog::Dialog(QWidget *parent)
: QDialog(parent)
{
time1=new QTimer(this);
btn1=new QPushButton(this);
edit1=new QLineEdit(this);
edit2=new QLineEdit(this);
label1=new QLabel(this);
btn1->setText("求和");
label1->setText("label");
QGridLayout * layout=new QGridLayout(this);
layout->addWidget(edit1,,);
layout->addWidget(edit2,,);
layout->addWidget(btn1,,);
layout->addWidget(label1,,); //将btn1点击事件和add函数关联起来
connect(btn1,SIGNAL(clicked()),this,SLOT(add()));
//将time1的timeout()时间和on_time函数关联起来
connect(time1,SIGNAL(timeout()),this,SLOT(on_time()));
} void Dialog::add()
{
//判断定时器是否已经启动
if(time1->isActive())
//停止定时器
time1->stop();
else
time1->start();//表示每隔1秒就会重启定时器
} //窗口标题每秒变化一次
void Dialog::on_time()
{
//获取当前系统时间
QDateTime *date1=new QDateTime(QDateTime::currentDateTime());
QString s=date1->time().toString();
//获取秒
//date1->time().second();
this->setWindowTitle(s);
} Dialog::~Dialog()
{ }

QT QDateTime类、QTimer类的更多相关文章

  1. [转]QT QDateTime类、QTimer类

    QDateTime类,头文件#include <QDateTime> 可以使用QDateTime类来获得系统时间.通过QDateTime::currentDateTime()来获取本地系统 ...

  2. Qt 中一些常用类中文说明

    Qt 中一些常用类中文说明是本文讲述的内容,这篇文章主要是介绍Qt 当中经常使用的类,采取的是使用字母索引的方式,下面的类是被经常使用的. QDataStream 为QIODevice提供了一串的二进 ...

  3. Qt中利用QTime类来控制时间,这里简单介绍一下QTime的成员函数的用法:

    Qt中利用QTime类来控制时间,这里简单介绍一下QTime的成员函数的用法: ------------------------------------------------------------ ...

  4. 第11课 Qt中的字符串类

    1. 历史遗留问题和解决方案 (1)历史遗留问题 ①C语言不支持真正意义上的字符串 ②C语言用字符数组和一组函数实现字符串操作 ③C语言不支持自定义类型,因此无法获得字符串类型 (2)解决方案 ①从C ...

  5. Qt 线程池QThreadPool类、QRunnable类

    QThreadPool类 用来管理 QThreads.此类中的所有函数都是线程安全的. 主要属性: 1.activeThreadCount: 此属性表示线程池中的活动线程数,通过activeThrea ...

  6. 二QT中使用QTimer定时器

    QT中的定时器类叫QTimer(5.8以上版本才有),构造函数只需要提供父对象的指针 使用的话,需要调用QTImer的start方法,该方法以毫秒单位,每过指定毫秒时间,该类对象就会发出一个timeo ...

  7. 初识UML类图--类之间关系

    前言 最近有打算学习一下设计模式,所以就去看了园子里面左潇龙大哥的设计模式文章,看完之后只有一个感觉,我啥时候也能写出来这么牛逼的文章啊,但是我这语文老师死的早的人还是算了,但是设计模式还是要学的,这 ...

  8. [.net 面向对象编程基础] (9) 类和类的实例

    [.net 面向对象编程基础] (9) 类和类的实例 类 ,顾名思义就是分类.类别的意思.我们要面向对象编程,就需要对不同的事物进行分类.类可以说是.net面向对象的核心. 类:就是具有相同的属性和功 ...

  9. java异常处理:建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount),当取款的数额大于存款时,抛出InsufficientFundsException,取款数额为负数,抛出NagativeFundsException,如new Bank(100),

    建立exception包,建立Bank类,类中有变量double  balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount ...

随机推荐

  1. 使用sencha cmd 一键生成你的应用程序代码

    一键生成你的应用程序代码: ------------------------------------------------------------ 我们的出发点就是使用命令来产生一个应用程序,执行以 ...

  2. GlassFish: 001 安装、启动

    安装 在GlassFish项目的首页就可以找到如何安装: https://glassfish.java.net/download.html#gfoseTab 上面给出了5个步骤:0,1,2,3,4 第 ...

  3. PHP 类型判断和NULL,空值检查

    PHP是一种宽松类型的编程语言,在函数中对传入的参数值的“类型”以及”值是否为空或者NULL“进行检查是不可缺少的步骤. 类型检查 从PHP5开始,PHP允许对函数的参数进行类型约束,即可以约束参数的 ...

  4. 开窗函数 --over()

    一个学习性任务:每个人有不同次数的成绩,统计出每个人的最高成绩. 这个问题应该还是相对简单,其实就用聚合函数就好了. select id,name,max(score) from Student gr ...

  5. Storm系列(三):创建Maven项目打包提交wordcount到Storm集群

    在上一篇博客中,我们通过Storm.Net.Adapter创建了一个使用Csharp编写的Storm Topology - wordcount.本文将介绍如何编写Java端的程序以及如何发布到测试的S ...

  6. 烂泥:Windows下安装与配置Nginx web服务器

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 前几篇文章,我们使用nginx都是在linux环境下,今天由于工作的需要.需要在windows环境也使用nginx搭建web服务器. 下面记录下有关ng ...

  7. linux权限补充:rwt rwT rws rwS 特殊权限

    众所周知,Linux的文件权限如: 777:666等,其实只要在相应的文件上加上UID的权限,就可以用到加权限人的身份去运行这个文件.所以我们只需要将bash复制出来到另一个地方,然后用root加上U ...

  8. node.js表单——formidable

    node处理表单请求,需要用到formidable包.安装formidable包的命令如下: npm install formidable 安装package的路径分为两种,一种是本地目录,一种是全局 ...

  9. Linux network driver

    一.常见问题 1)2.6.32内核不兼容I219网卡 http://exxactcorp.com/blog/how-to-installconfigure-intel-i219-network-ada ...

  10. WD硬盘型号信息

    买硬盘的时候有时候分不清 既然找到了就发上来吧