ProgressBar.Style ---- Marquee


VS2005平台下的ProgressBar控件有三種Style:
Blocks 通過在 ProgressBar 中增加分段塊的數量來指示進度。
Continuous 通過在 ProgressBar 中增加平滑連續的欄的大小來指示進度。
Marquee 通過以字幕方式在 ProgressBar 中連續滾動一個塊來指示進度。

1.設置Marquee樣式
progressBar1.MarqueeAnimationSpeed = 50;//設置字幕動畫的速度(單位是毫秒)
progressBar1.Style = ProgressBarStyle.Marquee;//設置進度條樣式為marquee

開始滾動時設置為Marquee樣式,停止滾動時設置為Blocks樣式即可
如果系統安裝了桌面主題的話,可能會干擾Marquee樣式的顯示,卸掉后就不影響了
通過下面的演示程序看一下效果吧

view plaincopy to clipboardprint?
·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150

//在窗口中拖入ProgressBar控件,Timer控件,Button控件

bool timeout = false;//指示線程掛起時間是否到達
private void timer1_Tick(object sender, EventArgs e)
{
if (timeout)
{
timer1.Stop();//計時器停止計時
timeout = false;
progressBar1.Style = ProgressBarStyle.Blocks;//設置進度條樣式為blocks
}
}

private void button1_Click(object sender, EventArgs e)
{
timer1.Start();//計時器開始計時
timeout = false;
progressBar1.MarqueeAnimationSpeed = 50;//設置字幕動畫的速度(單位是毫秒)
progressBar1.Style = ProgressBarStyle.Marquee;//設置進度條樣式為marquee
//
System.Threading.Thread myThread;//創建另一個線程(用於計時吧)
myThread = new System.Threading.Thread(new System.Threading.ThreadStart(myStartingMethod));
myThread.Start();//啟動線程
}

private void myStartingMethod()
{
Thread.Sleep(6000);//線程掛起時間(單位是毫秒)
timeout = true;//修改
}

ToolStripProgressBar控件是ProgressBar控件的升級,也有這方面的功能
在實際使用時,我設置了progressbar的Marquee,但是沒有用。。
查了資料才發現 沒有啟用 視覺樣式,加上只一句 Application.EnableVisualStyles(); 就可以了

 

出處:http://blog.sina.com.cn/s/blog_4c6e822d0102e2bz.html

=============================================================================

其實最簡單的就是用兩個Label模擬。
外側的Label設置為凹陷效果。
里面擺一個Label,默認width=0
更新內側的Label的寬度,讓它等於最大寬度的百分比,即可實現進度條的效果。
還可以加上文字、修改顏色。
----------------------------------------
頂樓上。
http://www.codeproject.com/Articles/203302/Progress-Bar-Google-Chrome
自定義的ProgressBar做個參考吧
還有這個是vb.net寫的
http://www.codeproject.com/Articles/26518/Custom-ProgressBar-Control
其他一些東西,有需要可以自己去google,學會自己解決問題。

 

出處:https://bbs.csdn.net/topics/390696249


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM