【应用开发】计时器程序小结

 

        同事希望我帮他找一个能演示PPT、Excel、Word时用于计时的程序,要求是:

1.前置 2.好用

        按此要求在网上搜索了一些,包括各种类型的免费、试用安装版、绿色版软件、PPT宏等,但都不太理想。在download.csdn.net搜索计时器找到一个好用的软件,直接运行即使得,大小只有13KB左右,估计是用C#写的,但没有公布源码。

 

        但是博主认可的这款软件并不符合朋友的要求,无奈之下只好亲自操刀(好在此工程并不复杂)拟写了一个小程序。贴在此处以供参考。欢迎拍砖 :)

        开发环境是C++ Builder 6.0,所用控件是最简单的form、static_text,还有两个button,既然是“计时器”当然还要使用Timer控件。实际效果如图所示:

 

源码如下————————————————————————————

 

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TBearTimer *BearTimer;
//---------------------------------------------------------------------------
__fastcall TBearTimer::TBearTimer(TComponent* Owner)
	: TForm(Owner)
{
  	this->st_time->Left=20;
        this->st_time->Top=5; 
  	this->st_time->Width=150;
        this->st_time->Height=40;
        this->Timer1->Enabled = false;
        this->st_time->Caption = "00:00:00";

        //this->Btn_clear->Visible = false;
        //this->Btn_clear->Enabled = false;
        
}
//---------------------------------------------------------------------------

void __fastcall TBearTimer::Timer1Timer(TObject *Sender)
{
	TDateTime tmpTime = Time();  // store the current date and time

        AnsiString str= (tmpTime.operator -(this->curTime) ).TimeString();


        st_time->Caption=str;
/*	杨,xp里这样设置:控制面板>区域和语言>区域>自定义>时间>
		设置“长时间”显示为HH:mm:ss,
	我猜你现在的设置应该是"tt hh:mm:ss"  你看下对不对;
	可以打开计时器,设置时间以后点应用,计时器显示会变,
        然后换个设置再点应用,计时器显示又变。*/

	// 由于不同的操作系统对显示时间(注意不是日期)的默认设置不同,
        // 若要显示设计者希望出现的效果,则应调整系统时间设置,按上

}
//---------------------------------------------------------------------------

void __fastcall TBearTimer::Btn_beginClick(TObject *Sender)
{
        this->curTime = Time();  // store the current date and time
        this->Timer1->Enabled = true;
}
//---------------------------------------------------------------------------
void __fastcall TBearTimer::Btn_clearClick(TObject *Sender)
{
	this->Timer1->Enabled = false;
	this->st_time->Caption = "00:00:00";//暂停功能则注释该行,并修改按钮的Caption
}
//---------------------------------------------------------------------------

//优化:
//1、如何只刷新数字,不闪屏
//2、前置--已实现   FormStyle=fsStayOnTop
//3、去掉最大化--已实现 BorderStyle=bsDialog, BorderIcons只选择最小化与系统菜单
/*  杨:
	界面还需改进。  --已实现  Form 和 st_time 底色均用clBlack
	界面再亮丽一点、字体再清晰一点 --已实现 st_time font选用Quartz(下载字体文件,并置于C:/Windows/Fonts文件夹下), 颜色酸橙色
	增加微秒。--无必要,暂不修改
	就差不多了
*/

// 讨论:第二个按钮设置成清零,还是暂停好?因为“开始”点一下就自动清零了,这里用“清零”


 附源码及应用程序下载链接:

 http://download.csdn.net/detail/luxer_1985/4773817

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值