利用qtimer实现红黄绿色字幕以2s为间隔循环显示,问题出在哪 200

#include<QApplication>#include<QLabel>#include<QTimer>#include<QObject>QLabel*label;i... #include <QApplication>
#include <QLabel>
#include <QTimer>
#include <QObject>

QLabel *label;
int Lcolor=1;//default color----1==red,2==yellow,3==green;

void changecolor()//change by former color
{
switch (Lcolor)
{
case 1:
label->setText("<h2><font color=yellow>Hello World</font></h2>");
Lcolor = 2;
break;
case 2:
label->setText("<h2><font color=green>Hello World</font></h2>");
Lcolor = 3;
break;
case 3:
label->setText("<h2><font color=red>Hello World</font></h2>");
Lcolor = 1;
break;
default:
label->setText("Error.Find the wrong place in the cpp.");
}
}

int main(int argc,char *argv[])
{
QApplication app(argc,argv);

QLabel *label = new QLabel("<h2><font color=red>Hello World</font></h2>");
label->show();

QTimer *timer = new QTimer(label);
QObject::connect(timer,SIGNAL(timeout()),label,SLOT(changecolor()));
timer->start(2000);//to make a timer to count 2 seconds

return app.exec();

}
代码如上,可以编译,但运行后一直显示红色,不变化。
环境是ubuntu12.04里的QT4.8。
我对QTimer是不是有什么误解?
展开
 我来答
DoramiHe
2018-04-03 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59541
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
plc红绿灯梯形图原理:

车道红灯、人行道红灯,亮30秒。

车道绿灯、人行道绿灯,亮25秒。

车道黄灯,人行道黄灯,亮0.5秒灭0.5秒.闪烁5秒。

东西、南北车流量大小不同时,可以将车流量小的方向的时间调短一些。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式