庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>程序设计>VB专区>基础教程>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

VB中的时间处理问题

 作者:罗程    日期:2005-8-4 11:11:56
字号选择〖 〗/ 双击滚屏 单击停止   
编程中常常会与时间打交道,VB编程自然也不例外。以下就谈谈我在这方面的一点经验。
   VB中提供了很多变量类型,DATE型就是专门用了存储时间的。
   1、DATE型变量及其相关函数
   在内部,一个Date占8个字节的内存,你可以方便地用它来存储日期和时间。给Date变量赋值是很容易的。但请保证输入顺序与系统默认的时间表示顺序相同。例如:
   Dim d As Date
   d = #5/23/99 11:45:34 AM#
   DateSerial函数可以把年、月、日的数字组合成一个Date值。TimeSerial函数可把小时、分、秒的数字组合成一个Date值。且两函数可以叠加。
   d = DateSerial(1999, 5, 23) + TimeSerial(11, 45, 34)
   而DateValue 和TimeValue 函数则可将代表日期和时间的字符串转化为Date型,并且也可以叠加。
   d = DateValue(“1999/ 5/ 23”) + TimeValue(“11: 45: 34”)
   Format函数可按预定的格式显示或打印一个Date变量。如:
   Print Format(d, “general date”) `99-5-23 11:45:34
   Print Format(d, “long date”) `1999年5月23日
   Print Format(d, “medium date”) `99-05-23
   Print Format(d, “short date”) `99-5-23
   Print Format(d, “long time”) `11:45:34
   Print Format(d, “medium time”) `11:45 AM
   Print Format(d,“short time”) `11:45
   Format函数也允许你自己规定显示格式。如:
   Print Format(d, “mmmm”) `may 产生日期中月份的英文
   以以上日期为例,如想显示其中的一部分信息可使用以下函数
   Print Month(d) `5
   Print Day(d) `23
   Print Year(d) `1999
   Print Hour(d) `11
   Print Minute(d) `45
   Print Second(d) `34
   Print WeekDay(d)`1
   Weekday 提供了一组内部常量,vbSunday代表1,直到 vbSaturday代表7。
   Now 函数可返回今天的日期及时间。如:
   Private Sub Form_Click()
   Dim d As Date
   d = Now
   Print d
   End Sub
   灵活地应用以上的函数,可以大大地简化你的程序。例如想计算10000秒等于几小时几分几秒可写为:
   Private Sub Form_Click()
   Dim d As Date
   d = TimeSerial(0, 0, 10000)
   Print d
   End Sub
   结果为2:46:40。
   2、与时间相关的常用控件。
   Timer控件是一个奇特的控件。Timer 控件会在固定时间间隔中运行Timer事件。此间隔是由Interval属性决定的,其单位为千分之一秒。但不要以为将其值设为0事件就可不间断地运行了。结果恰恰相反,事件将一次也不运行。同时还要注意变量的声明。如:
   Private Sub Timer1_Timer()
   Dim a As Integer
   a = a + 1
   Print a
   End Sub

   Dim a As Integer
   Private Sub Timer1_Timer()
   a = a + 1
   Print a
   End Sub
   试试看,其结果是完全不同的。
   当需要用户输入时间时,为避免出现错误的时间,可以使用日历控件。它只允许用户在日历表中选择日期,避免了错误的发生。
   3、记录时间的API函数
   GetTickCount Windows API函数可返回 Windows 启动以来消失的毫秒数。其精度高于VB的Timer 函数。且Timer 函数会在午夜清零,而GetTickCount 函数只有当机器连续使用49.7天后才返回零。这为我们编程提供了很大的方便。例如想知道你的电脑连续工作多久了,可新建一工程,然后添加以下代码:
   Private Declare Function GetTickCount Lib “kernel32" () As Long
   Private Sub Form_Load()
   Dim d As Date
   Dim t As Integer
   Form1.Show
   t = GetTickCount \ 1000
   d = TimeSerial(0, 0, t)
   Print d
   End Sub
上一篇:简单计算函数的编写过程    下一篇:在Visual Basic中使用Rundll32.exe和Rundll.exe  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 罗程
信息来源: 网络 录入时间: 2005-8-4 11:11:56
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿