時間を表す数値を文字列に変換          <TOP>


Windowsを起動してからの経過時間を取得し、文字列に変換表示します。

GetTickCount システムが起動してからの経過時間を取得

StrFromTimeInterval 時間を表す数値を文字列に変換

 

左:タイマーを貼り付けます    右:Windowsを起動してからの経過時間を表示させています。

 

 

'================================================================
'= 時間を表す数値を文字列に変換
'=    (StrFromTimeInterval.bas)
'================================================================
#include "Windows.bi"

' システムが起動してからの経過時間を取得
Declare Function Api_GetTickCount& Lib "kernel32" Alias "GetTickCount" ()

' 時間を表す数値を文字列に変換
Declare Function Api_StrFromTimeInterval& Lib "shlwapi" Alias "StrFromTimeIntervalA" (ByVal pszOut$, ByVal cchMax&, ByVal dwTimeMS&, ByVal dwDigits&)

Var Shared Text1 As Object
Var Shared Text2 As Object
Var Shared Timer1 As Object

Text1.Attach GetDlgItem("Text1") : Text1.SetFontSize 14
Text2.Attach GetDlgItem("Text2") : Text2.SetFontSize 14
Timer1.Attach GetDlgItem("Timer1")

Var Shared numDigits As Long

'================================================================
'=
'================================================================
Declare Function FormatTimeInterval(milliseconds As Long, numDigits As Long) As String
Function FormatTimeInterval(milliseconds As Long, numDigits As Long) As String
    Var S As String * 50
    numDigits = 7

    FormatTimeInterval = Left$(S, Api_StrFromTimeInterval(S, Len(S), milliseconds, numDigits))
End Function

'================================================================
'=
'================================================================
Declare Sub MainForm_Start edecl ()
Sub MainForm_Start()
    Timer1.SetInterval 10
    Timer1.Enable -1
End Sub

'================================================================
'=
'================================================================
Declare Sub Timer1_Timer edecl ()
Sub Timer1_Timer()
    Text2.SetWindowText FormatTimeInterval(Api_GetTickCount, numDigits)
End Sub

'================================================================
'=
'================================================================
While 1
    WaitEvent
Wend
Stop
End