C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: タイマー処理


(過去ログ 53 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■29684 / inTopicNo.1)  タイマー処理
  
□投稿者/ pipi (1回)-(2008/12/12(Fri) 11:18:14)

分類:[.NET 全般] 

VB.NETでタイマー処理を行っています。
テキストボックスに入力した値の時間のみ時間を計るようにしたのですが
今の段階では入力した時間になったら計測が終了します。
それを停止ボタンが押されるまで何回も計測させたいのですが
myTime.intCountを初期化すればいいのでしょうか?


Private Sub Timer1_Tick(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Timer1.Tick
Dim tsTime As TimeSpan '経過時間
Dim intNowSec As Integer

'発生した割り込みのカウンター
myTime.intCount += 1

'1/1000秒を取得
intNowSec = Now.Millisecond
'1/1000秒のオーバーフロー発生
If myTime.intBackSec > intNowSec Then
'オーバーフローの回数
myTime.intSec += 1
End If
'前の1/1000秒を記憶
myTime.intBackSec = intNowSec

'現在の1/1000秒の時刻 + オーバーフロー補正
myTime.intTime(myTime.intCount) = myTime.intSec * 1000 + Now.Millisecond

'現在の時刻からスタート時刻を引く
tsTime = DateTime.Now.Subtract(myTime.timeStart)

'現在の時刻の表示
TextBox2.Text = "現在、" & Format(tsTime.Minutes, "00") & "分" & Format(tsTime.Seconds, "00") & "秒経過中・・・・"

End Sub
'------------------
'計測時間用のタイマー
'------------------
Private Sub Timer2_Tick(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Timer2.Tick

Dim tsTime As TimeSpan '経過時間
Dim lngSum As Long 'トータルの経過時間
Dim intMax As Integer = 0
Dim IntMini As Integer = 0
Dim intSpan As Integer
Timer2.Enabled = False
Timer1.Enabled = False

'スタート時間からの経過時間
tsTime = DateTime.Now.Subtract(myTime.timeStart)

'経過時間の表示
TextBox2.Text = Format(tsTime.Seconds, "00")

'精密タイマーの各割り込みスパンの計算
For i As Integer = 1 To myTime.intCount - 1
'各スパンを全て足す
intSpan = (myTime.intTime(i + 1) - myTime.intTime(i))
lngSum = lngSum + CLng(intSpan)
If intMax = 0 And IntMini = 0 Then
'初回の処理
intMax = intSpan
IntMini = intSpan
ElseIf IntMini > intSpan Then
'MAXの更新
IntMini = intSpan
ElseIf intMax < intSpan Then
'Miniの更新
intMax = intSpan
End If
Next

End Sub

引用返信 編集キー/
■29689 / inTopicNo.2)  Re[1]: タイマー処理
□投稿者/ επιστημη (1460回)-(2008/12/12(Fri) 11:55:29)
επιστημη さんの Web サイト
> myTime.intCountを初期化すればいいのでしょうか?

訊くまでもない。やってみりゃわかること。

引用返信 編集キー/
■29691 / inTopicNo.3)  Re[2]: タイマー処理
□投稿者/ .SHO (389回)-(2008/12/12(Fri) 11:58:42)
> 訊くまでもない。やってみりゃわかること。

ですね。

で、もう少し頑張って質問を整理してください。
掲載されたソースのロジックに関する質問なのか?
それともタイマーの機構に関する質問なのか?
質問内容がよくわかりません。
引用返信 編集キー/
■29694 / inTopicNo.4)  Re[3]: タイマー処理
□投稿者/ pipi (2回)-(2008/12/12(Fri) 13:09:43)
2008/12/12(Fri) 13:15:33 編集(投稿者)
2008/12/12(Fri) 13:15:19 編集(投稿者)

もう少し質問を考えてから投稿します。
解決済み
引用返信 編集キー/
■29695 / inTopicNo.5)  Re[4]: タイマー処理
□投稿者/ επιστημη (1461回)-(2008/12/12(Fri) 13:19:29)
επιστημη さんの Web サイト
ぉぃぉぃ、アナタはTimer1,Timer2の用途/目的について説明してないぞ。
「入力された時間を計測する」ってだけならタイマー一個で十分なわけで、
なんのために二つ用意してるんです?

そこらへんの説明なしに

> Timer1_TickからTimer2_Tickに移るのかがわかりません。

ていわれてもねぇ。

引用返信 編集キー/
■29696 / inTopicNo.6)  Re[4]: タイマー処理
□投稿者/ .SHO (391回)-(2008/12/12(Fri) 13:23:49)
2008/12/12(Fri) 13:25:31 編集(投稿者)

# また出遅れた…
# しかも全部消えてるし…

> またTimer1_TickからTimer2_Tickに移る…

そもそも Timer1_Tick から Timer2_Tick に遷移するように
コーディングしたんですか?

> 引数エラーになってしまいます。

引数必要なのに指定していないからです。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -