<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    cc

    隨筆 - 20, 文章 - 0, 評論 - 1, 引用 - 0
    數(shù)據(jù)加載中……

    VB中的時間處理問題

    編程中常常會與時間打交道,VB編程自然也不例外。以下就談?wù)勎以谶@方面的一點經(jīng)驗。
       VB中提供了很多變量類型,DATE型就是專門用了存儲時間的。
       1、DATE型變量及其相關(guān)函數(shù)。
       在內(nèi)部,一個Date占8個字節(jié)的內(nèi)存,你可以方便地用它來存儲日期和時間。給Date變量賦值是很容易的。但請保證輸入順序與系統(tǒng)默認的時間表示順序相同。例如:
       Dim d As Date
       d = #5/23/99 11:45:34 AM#
       DateSerial函數(shù)可以把年、月、日的數(shù)字組合成一個Date值。TimeSerial函數(shù)可把小時、分、秒的數(shù)字組合成一個Date值。且兩函數(shù)可以疊加。
       d = DateSerial(1999, 5, 23) + TimeSerial(11, 45, 34)
       而DateValue 和TimeValue 函數(shù)則可將代表日期和時間的字符串轉(zhuǎn)化為Date型,并且也可以疊加。
       d = DateValue(“1999/ 5/ 23”) + TimeValue(“11: 45: 34”)
       Format函數(shù)可按預(yù)定的格式顯示或打印一個Date變量。如:
       Print Format(d, “general date”) `99-5-23 11:45:34
       Print Format(d, “l(fā)ong date”) `1999年5月23日
       Print Format(d, “medium date”) `99-05-23
       Print Format(d, “short date”) `99-5-23
       Print Format(d, “l(fā)ong time”) `11:45:34
       Print Format(d, “medium time”) `11:45 AM
       Print Format(d,“short time”) `11:45
       Format函數(shù)也允許你自己規(guī)定顯示格式。如:
       Print Format(d, “mmmm”) `may 產(chǎn)生日期中月份的英文
       以以上日期為例,如想顯示其中的一部分信息可使用以下函數(shù):
       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 提供了一組內(nèi)部常量,vbSunday代表1,直到 vbSaturday代表7。
       Now 函數(shù)可返回今天的日期及時間。如:
       Private Sub Form_Click()
       Dim d As Date
       d = Now
       Print d
       End Sub
       靈活地應(yīng)用以上的函數(shù),可以大大地簡化你的程序。例如想計算10000秒等于幾小時幾分幾秒可寫為:
       Private Sub Form_Click()
       Dim d As Date
       d = TimeSerial(0, 0, 10000)
       Print d
       End Sub
       結(jié)果為2:46:40。
       2、與時間相關(guān)的常用控件。
       Timer控件是一個奇特的控件。Timer 控件會在固定時間間隔中運行Timer事件。此間隔是由Interval屬性決定的,其單位為千分之一秒。但不要以為將其值設(shè)為0事件就可不間斷地運行了。結(jié)果恰恰相反,事件將一次也不運行。同時還要注意變量的聲明。如:
       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
       試試看,其結(jié)果是完全不同的。
       當需要用戶輸入時間時,為避免出現(xiàn)錯誤的時間,可以使用日歷控件。它只允許用戶在日歷表中選擇日期,避免了錯誤的發(fā)生。
       3、記錄時間的API函數(shù)。
       GetTickCount Windows API函數(shù)可返回 Windows 啟動以來消失的毫秒數(shù)。其精度高于VB的Timer 函數(shù)。且Timer 函數(shù)會在午夜清零,而GetTickCount 函數(shù)只有當機器連續(xù)使用49.7天后才返回零。這為我們編程提供了很大的方便。例如想知道你的電腦連續(xù)工作多久了,可新建一工程,然后添加以下代碼:
       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??


    posted on 2006-11-11 10:37 cc 閱讀(364) 評論(1)  編輯  收藏

    評論

    # re: VB中的時間處理問題   回復(fù)  更多評論   

    我也遇到同樣的問題
    2008-12-30 13:16 | 北京時間

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 福利免费观看午夜体检区| 久爱免费观看在线网站| 18禁无遮挡无码网站免费| 久久亚洲精品国产精品| 91青青国产在线观看免费| 久久久久亚洲AV无码麻豆| 91人人区免费区人人| 亚洲男女性高爱潮网站| 精品国产sm捆绑最大网免费站| 亚洲国产中文在线二区三区免| 无码国产精品一区二区免费虚拟VR | 成人毛片免费在线观看| 亚洲精品123区在线观看| 卡一卡二卡三在线入口免费| 亚洲av永久无码一区二区三区| 日本一道本高清免费| 成人免费网站久久久| 国产亚洲色婷婷久久99精品| 美女在线视频观看影院免费天天看 | 免费在线观看你懂的| 一本一道dvd在线观看免费视频| 亚洲中文久久精品无码| 99精品视频免费| 亚洲网址在线观看| 午夜免费福利在线| www一区二区www免费| 亚洲一区二区三区首页| 精品久久久久国产免费| 人人鲁免费播放视频人人香蕉| 国产成A人亚洲精V品无码性色| 免费在线观看h片| 国产成人亚洲精品91专区高清| 亚洲精品无码专区在线在线播放| 亚洲免费闲人蜜桃| 日韩毛片免费一二三| 亚洲av网址在线观看| 女人18特级一级毛片免费视频| 国产精品无码免费专区午夜 | 亚洲丝袜中文字幕| 亚洲国产精品成人网址天堂| 97青青草原国产免费观看|