C# WinForm ProgressBar垂直显示进度和从右向左显示进度

https://www.cnblogs.com/jaxu/archive/2011/07/29/2121305.html

1. 尝试将ProgressBar的RightToLeft属性设置为System.Windows.Forms.RightToLeft.Yes,同时将RightToLeftLayout属性设置为true,ProgressBar的进度指示将从右向左显示。

2. 如何实现一个垂直进度显示的进度条?

  自定义VerticalProgressBar类继承ProgressBar,改写属性CreateParams如下:

复制代码
public class VerticalProgressBar : ProgressBar
{
    
protected override CreateParams CreateParams
    {
        
get
        {
            CreateParams cp 
= base.CreateParams;
            cp.Style 
|= 0x04;
            
return cp;
        }
    }
}
复制代码

  在窗体中找到定义ProgressBar的代码(如Form1.Designer.cs),将类型从System.Windows.Forms.ProgressBar修改为VerticalProgressBar。界面中需要将ProgressBar的高和宽进行适当调整。加入可以控制ProgressBar进度的代码,运行程序,你将会看到一个进度从下向上的垂直进度条。下面是程序运行的截图。同时附上完整代码VerticalProgressBar.zip

垂直从下向上显示

 

水平从右向左显示

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章