2016-04-07 11 views
0

こんにちは私は初心者/普通のVBプログラマです。私はそれを毎秒自分で更新するだけのタイマーを作っています。VBのプログレスバーを動的に更新する

私は気象に関する疑問を持ち始めましたか、それともうまくいかなかったので、私は自分のタイマーコードにmsgボックスを適用しました。どうして?

Dim power As PowerStatus = SystemInformation.PowerStatus 
Dim percent As Single = power.BatteryLifePercent 
    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer.Tick 
    ProgressBar1.Value = percent * 100 
    Label1.Text = percent * 100 
End Sub 

私は状況をとる電源状態およびパーセントを持ってして、プログレスバーは、その割合を使用しますが、メッセージボックスのようなありえない更新がなぜ使用可能な割合に変身?

+0

値を設定した後に 'ProgressBar1.Refresh'を追加して、再描画するようにしてください。 –

+0

コードは公開されています。 – LarsTech

答えて

0

あなたのタイマーはうまくいっていますが、更新された値がどこでどのように表示されるかはわかりません。SystemInformation.PowerStatus.BatteryLifePercent

あなたのコードのどこかでこれをやっているかもしれませんが、投稿されているときに常に同じ値を表示しているので、もちろんプログレスバーは変更されません。

0

私はあなたの質問から見ることができるものから、すべてがOK作業しなければならないが、私は、しかしそれにもかかわらず、ここで、あなたはデザイナーではなく、符号化側であなたが持つかもしれないがTimer1.Interval = 1000が、これを追加したことを確認カント私はこれをしなかった方法です何か問題は私が知っていると私はあなたを助けるために最善を尽くします持っている場合は、あなたが確認することができますちょうどので、私の作業例を見ることができるので、:)

Public Class Form1 
Dim Timer1 As New Timer 
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
    Timer1.Enabled = True 
    Timer1.Interval = 1000 
    AddHandler Timer1.Tick, AddressOf Timer1_Tick 
    Timer1.Start() 
End Sub 

Private Sub Timer1_Tick() 
    Dim POWER As PowerStatus = SystemInformation.PowerStatus 
    Dim PERCENT As Single = POWER.BatteryLifePercent 
    Dim ONCHARGE As PowerStatus = SystemInformation.PowerStatus 
    ProgressBar1.Value = PERCENT * 100 
    Label1.Text = "Power Remaining: " & PERCENT * 100 & "%" 
    If ONCHARGE.PowerLineStatus = PowerLineStatus.Online Then 
     Label2.Text = "Currently: Charging" 
    Else 
     Label2.Text = "Currently: Not Charging" 
    End If 
    End Sub 
    End Class 

をプロジェクト私がするプログレスバーと2つのラベルを追加しましたフォームの1つはコンピュータのバッテリーで、もう1つはケーブルのプラグが抜かれているかどうかをユーザーに伝えます。ケーブルのステータスを尋ねなかったのを知っていますが、それを必要とするだけで追加しました:) ハッピーコーディング

+0

OPは毎秒それを実行したかったので、それは 'Timer1.Interval = 1000'になります。フォームイベントを処理する代わりにOnLoadメソッドをオーバーライドし、Tickメソッドに適切なパラメータを含める必要があります。 – LarsTech

+0

ああ、そうだよ:) – Werdna

関連する問題