C++Builder:定时器Timer控件

目录

1、介绍Timer控件

1.1 TTime:Interval 属性

1.2 TTimer:Enable属性

2、使用Timer控件

2.1   /*  给红绿灯定时   */ 


1、介绍Timer控件

1.1 TTime:Interval 属性

  • 通常我们可以使用 for()、while()、do{}while() 函数做循环函数,
  • 在C++ Builder中提供了TTimer组件,用于循环,定期检查需要的数据。
  • Timer() 也是一个很好的间隔循环,允许执行循环元素时控制其他 UI 元素
  • TTimer:Interval 属性,用于确定计时器的 OnTimer 事件发生的频率。

例如:创建一个TLabel,计算并将其打印到标签上。
为此,双击 TTimer 组件以创建 OnTimer() 事件并编写如下行:

通常,Interval属性设置为1000ms,即1秒。

int count=0;
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
    count++;
    Label1->Text = IntToStr(count);
}

1.2 TTimer:Enable属性

 Enabled 属性:启用或禁用计时器。 

例如:按下按钮,启用定时器,再按下按钮,禁止定时器,代码如下:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
   if(Timer1->Enabled)
        Timer1->Enabled=false;
   else
        Timer1->Enabled=true;
}

2、使用Timer控件

2.1   /*  给红绿灯定时   */ 

void __fastcall TfrmTraffic::Timer1Timer(TObject *Sender)
{
	/* 刚开始的灯是红灯 */
	if( Light == CurrentLight::Red )
	{
		/* 时间量改为:1500s */
		Timer1->Interval = 1500;
		/* 灯的颜色改为橘色 */
		imgLight->Picture->LoadFromFile(L"OrangeLight.bmp");
		/* 更新灯标志 */
		Light = CurrentLight::Orange;
	}
	/* 刚开始的灯是橘色 */
	else if( Light == CurrentLight::Orange )
	{
		Timer1->Interval = 7500;
		imgLight->Picture->LoadFromFile(L"GreenLight.bmp");
		Light = CurrentLight::Green;
	}
	/* 刚开始的灯是绿色 */
	else //  if( Light == CurrentLight::Green )
	{
		Timer1->Interval = 5000;
		imgLight->Picture->LoadFromFile(L"RedLight.bmp");
		Light = CurrentLight::Red;
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值