打印本文 打印本文  关闭窗口 关闭窗口  
教你如何使用C++Builder制作闹钟
作者:佚名  文章来源:不详  点击数  更新时间:2008/3/28 16:33:52  文章录入:杜斌  责任编辑:杜斌

  大凡热恋中的网虫都曾经陷入下列的困境:约好女/男朋友晚七点半在老地方等,却在计算机面前一直爬行到深夜,等反映过来,朋友早已拂尘而去,又得几天的功夫去陪礼道歉。朋友何不按以下步骤做一简单的闹钟,让你安安心心上网,大大方方约会。你只要在上网的时候打开此应用程序,设置好约会时间(当然也可以是默认好的)即可。时间一到,音乐响起,快去约会吧。

  本闹钟程序有以下组件组成:

序号    组件类型         组件名称             功能1       Tlabel           l_Clock_1       显示“输入日期”2     TdateTimePicker    dtp_Clock_1         选择日期3      Tlabel            l_Clock_2       显示“输入时间”4     TdateTimePacker    tdp_Clock_2         选择时间5     TmediaPlayer        mp_Clock           演奏音乐6     Tbutton            b_Clock_Open        重新打开7     Ttimer             t_Clock             定时检测8     Tbutton            b_Clock_Close     关闭应用程序

  屏幕组件一览表

  屏幕组件一览图

  说明:dtp_Clock_1 的Kind属性设置为dtkDate , dtp_Clock_2 的Kind属性设置为dtkTime,mp_Clock 的FileName属性设置为你主机上存在的任何mid、wav、avi文件。t_Clock 的Interval属性设置为10。

  事件说明如下:

①、 t_Clock的OnTimer :{//按时触发演示程序struct date d;struct time t;AnsiString thour,tmin,tsec;int dyear;int dintyear;int dmon,dday;AnsiString tinthour,tintmin,tintsec;AnsiString dintmon,dintday;//取当天日期getdate(&d);dyear=d.da_year;dday=d.da_day;dmon=d.da_mon;dintyear=StrToInt(dint.SubString(1,2));dintmon=dint.SubString(4,2);dintday=dint.SubString(7,2);//取当时时间gettime(&t);thour=AnsiString(t.ti_hour);tmin=AnsiString(t.ti_min);//tsec=AnsiString(t.ti_sec);//tint=AnsiString(DateTimePicker1- >Time);tinthour=tint.SubString(10,2);tintmin=tint.SubString(13,2);//tintsec=tint.SubString(16,2);//闹钟服务功能if ((StrToInt(thour)==StrToInt(tinthour))&&(StrToInt(tmin)==StrToInt(tintmin))&&(StrToInt(AnsiString(dyear).SubString(3,2))==dintyear)&&(StrToInt(dmon)==StrToInt(dintmon))&&(StrToInt(dday)==StrToInt(dintday))){dTimer- >Enabled=false;MediaPlayer1- >Open();MediaPlayer1- >Play();}}②、 b_Clock_Open 的OnClick:{t_Clock- >Enabled=true; }③、 b_Clock_Close的OnClick{Application- >Terminate();}

  当然此程序还可以拓展、细化,如我仅将触发条件检测到分,当然它完全可以检测到秒,也可以仅检测到时。

打印本文 打印本文  关闭窗口 关闭窗口