Nechápu přesně co si představujete pod pojmem "vypl". Existují vlastnosti ProgressBar.Maximum a Progress.Minimum, které vymezují interval, v jehož rámci se spočítá koeficient ProgressBar.Value proti horní a dolní hranici tohoto intervalu a na základě těchto údajů se vykreslí výplň do dané vzdálenosti. http://msdn.microsoft.com/en-us/library/... ProgressBar.Maximum http://msdn.microsoft.com/en-us/library/... ProgressBar.Minimum Výchozí hodnota vlasnosti Maximum je 100, takže tam byste toho moc řešit nemusel. Jiný význam slova "vypl" si dovedu představit ve spojení s vlastností komponenty Enabled. Enabled je vlastnost prvků uživatelského rozhraní, která říká, že prvek nemá v daném kontextu stavu formuláře žádnou funkci a proto je "vypnutý". http://msdn.microsoft.com/en-us/library/... Control.Enabled Nicméně vlastnost Enabled je co platná pouze u interaktivních prvků UI, ProgressBar informace pouze prezentuje, takže si nejsem jistý, jestli je to to, co hledáte. Také si nepamatuji, jestli má nastavení Enabled na ProgressBar vůbec nějaký vizuální dopad, s Windows Forms jsem již dlouhpo nepracoval. Pokud Vám jde o to, aby se nedala překročit hodnota 100 u ProgressBaru (pokud se tak stane, dojde k výjimce a program selže), tak to hledáte funkce Math.Min a Math.Max, kterými hodnotu okleštítě ještě předtím, než ji nastavíte vlastnosti Value.
Dim hodnota = 150
hodnota = Math.Min(ProgressBar1.Maximum, hodnota) ' menší z 100 a 150
hodnota = Math.Max(ProgressBar1.Minimum, hodnota) ' větší z 0 a 100 (bývalých 150)
ProgressBar1.Value = hodnota
' Vypnutí (zešednutí) ProgressBar při dosažení maxima:
If hodnota = ProgressBar1.Maximum Then
ProgressBar1.Enabled = False
End If
|