用编程来实现24小时制到12小时制的转换
出处:PConline 2004年02月14日 作者:cmain83/CSDN 责任编辑:linjixiong
文章导读: 昨天有一位网友在群聊中提到了这个问题,晚上回去想了很久。花了三个小时,终于找到了解决的方法,现在拿出来与大家分享: 首先想到的是TDateTimePicker控件有没有属性来实现这一功能的转换,因为这样做的好处不言而知。在我看了TDateTimePicker、 TCommonCalendar这两个类的源码后得出了结论,不能用控件的属性或过程来实现这一转换。 于是只好改变思路: 我们
{------------------------------------------------------------------------
//
//返回当前系统时间的显示方式
//
//返回值:
//默认的返回为24小时制
//
-----------------------------------------------------------------------}
functionGetTimeStory:Time_Story;
var
Reg:TRegistry;
begin
Result:=ts_24;
Reg:=TRegistry.Create;
Reg.RootKey:=HKEY_CURRENT_USER;
Reg.OpenKey('\ControlPanel\International',False);
Try
ifReg.ReadString('sTimeFormat')='tth:mm:ss'then
Result:=ts_12
else
Result:=ts_24;
Finally;
Reg.CloseKey;
Reg.Free;
end;
end;
end.
以上的实现功能的转换,而我们要在TDateTimePicker创建之前就要设置好系统时间格式。
所以还要修改.dpr的文件,如下:
programProject1;
uses
Forms,
SetTimeSotryUnitin'SetTimeSotryUnit.pas'{Form1};
{$R*.res}
begin
Application.Initialize;
ifGetTimeStory=ts_12then{如果为12小时制则显示为24小时制}
SetTimeStory(ts_24)
else{//如果为24小时制则显示为12小时制}
SetTimeStory(ts_12);
Application.CreateForm(TForm1,Form1);
Application.Run;
end.
至此全部完成....
希望看到更多更经典的开发技巧,请随时刷新《开发特区》栏目。
相关快问问题
频道精选
不花钱又能表达芳心,为对方设计情人节贺卡或者壁纸之类的,相信你的花心思制作的作品也能感动对方。...[详细]
- 用Delphi编写Win2000服务程序04-09
- Delphi实现对注册表的监视和扫描03-08
- Delphi基础:回调函数及其使用02-23
- Delphi实例演示:隐藏系统中的驱动器02-14
- Delphi7从入门到精通之认识Delphi编辑02-14
论坛热帖
热门软件下载推荐
本周十大热评文章
本周十大人气文章
软件今日报价






