掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
timesetevent内でWinsockを使うには? (ID:126699)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
生兵法は.....と言うこともあるので。 タイマーの基本は、 1、CPUにあまり負担をかけない、出来れば通常多くとも1%以下。 2、正確である。 この2点かな。 たとえば、目標時間に近づくとSleepを短くする方法が思いつくが。 Option Explicit Private Declare Function timeGetTime Lib "winmm.dll" () As Long Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Private Sub Command1_Click() timeWaiteTime Val(Text1.Text) End Sub Private Sub timeWaiteTime(ByVal timeWaite) Dim timeBack As Long, timeSleep As Long, timeRest As Long timeSleep = 10 timeBack = timeGetTime '押された時間 timeRest = 1 '残された時間 とりあえず1 Do While (timeRest > 0) timeRest = timeWaite - (timeGetTime - timeBack) '残された時間 timeSleep = Abs(timeRest \ 10) 'Sleep時間の設定 If timeSleep > 1000 Then timeSleep = 1000 '最低でも1秒に一回割り込みを許可 Label1.Caption = CStr(timeGetTime - timeBack) 'とりあえず表示 Sleep (timeSleep) '居眠り DoEvents '割り込み許可 Loop End Sub *テキストには待ち時間がmmSecondで設定されている。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.