Qt中利用定时器QTimer准实时显示当前日期和时间



Qt中利用定时器QTimer准实时显示当前日期和时间

Qt中,QDate类对应日期,QTime类对应时间。这两种类可以获取当前时间,但需要一个定时器来准实时显示当前日期和时间。

下面说明方法:

1. 在工程中声明一个全局QTimer对象

  1. QTimer *timer;  
	QTimer *timer;

2. 在构造函数中定义QTimer,并建立信号槽关系,同时设定时间启动(你也可以再其他地方启动)。

  1. timer = new QTimer(this);  
  2. connect(timer, SIGNAL(timeout()), this, SLOT(qtimeSlot()));  
  3. timer->start(1000);  
	timer = new QTimer(this);
	connect(timer, SIGNAL(timeout()), this, SLOT(qtimeSlot()));
	timer->start(1000);

这里设定1秒钟的定时器。

3. 编写显示日期和时间的槽函数

  1. void myQtEx::qtimeSlot()  
  2. {  
  3.     QTime qtimeObj = QTime::currentTime();  
  4.     QString strTime = qtimeObj.toString("h:m ap");  
  5.     strTime.prepend("  Time is: ");  
  6.     QDate qdateObj = QDate::currentDate();  
  7.     QString strDate = qdateObj.toString("dddd, MMMM d, yyyy"); //星期、月份、天、年  
  8.     strDate.prepend("Today is: ");  
  9.       
  10.     strDate.append(strTime);  
  11.     ui.timeLabel->setText (strDate);  
  12.   
  13.     //qDebug() << strTime;  
  14.     //qDebug() << strDate;  
  15.   
  16.   
  17. }  
void myQtEx::qtimeSlot()
{
	QTime qtimeObj = QTime::currentTime();
	QString strTime = qtimeObj.toString("h:m ap");
	strTime.prepend("  Time is: ");
	QDate qdateObj = QDate::currentDate();
	QString strDate = qdateObj.toString("dddd, MMMM d, yyyy"); //星期、月份、天、年
	strDate.prepend("Today is: ");
	
	strDate.append(strTime);
	ui.timeLabel->setText (strDate);

	//qDebug() << strTime;
	//qDebug() << strDate;


}

4. 获得结果如下



http://blog.csdn.net/lyc_daniel/article/details/9352781

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值