功能需求:
如果程序中会执行一个耗时的计算过程,我想在用户点击按钮后,弹出一个进度条窗口,显示正在执行的进度(最好能带有百分比),执行完成后,进度条窗口关闭,回到主程序窗口。 在关闭子窗口之前父窗体不能点击操作。 ====================================================== 先设计Form2进度条窗体,在Form2中央上放ProgressBar控件progressBar1和Label控件label1,代码: public partial class Form2 : Form
{
public Form2(int _Minimum,int _Maximum)//带参数,表示进度条的范围的最小值和最大值
{
InitializeComponent();
progressBar1.Maximum=_Maximum;//设置范围最大值
progressBar1.Value = progressBar1.Minimum = _Minimum;//设置范围最小值 }
public void setPos(int value)//设置进度条当前进度值
{
if (value < progressBar1.Maximum)//如果值有效 {
progressBar1.Value = value;//设置进度值
label1.Text = (value * / progressBar1.Maximum).ToString() + "%";//显示百分比
}
Application.DoEvents();//重点,必须加上,否则父子窗体都假死
}
private void Form2_Load(object sender, EventArgs e)
{
this.Owner.Enabled = false;//设置父窗体不可用
}
private void Form2_FormClosed(object sender, FormClosedEventArgs e)
{
this.Owner.Enabled = true;//回复父窗体为可用
}
} ================================================================= 调用窗体For1m设计,添加Button控件button1,事件代码: private void button1_Click(object sender, EventArgs e)
{
Form2 fm = new Form2(,);
fm.Show(this);//设置父窗体
for (int i = ; i < ; i++)
{
fm.setPos(i);//设置进度条位置
Thread.Sleep();//睡眠时间为100
}
fm.Close();//关闭窗体
} **************************************************************************** 补充:有朋友说在vs2003中fm.Show(this):是不支持的,那么可以将From2的构造函数多加一个参数: **************************************************************************** public Form OwnerForm;
public Form2(int _Minimum,int _Maximum,Form _OwnerForm)//带参数,表示进度条的范围的最小值和最大值
{
InitializeComponent();
progressBar1.Maximum=_Maximum;//设置范围最大值
progressBar1.Value = progressBar1.Minimum = _Minimum;//设置范围最小值 this.OwnerForm=_OwnerForm; }
private void Form2_Load(object sender, EventArgs e)
{
this.OwnerForm.Enabled = false;//设置父窗体不可用
}
private void Form2_FormClosed(object sender, FormClosedEventArgs e)
{
this.OwnerForm.Enabled = true;//回复父窗体为可用
} Form1中相应的修改为: private void button1_Click(object sender, EventArgs e)
{
Form2 fm = new Form2(,,this);
fm.Show();//设置父窗体
for (int i = ; i < ; i++)
{
fm.setPos(i);//设置进度条位置
Thread.Sleep();//睡眠时间为100
}
fm.Close();//关闭窗体
}

C#带百分比的进度条的更多相关文章

  1. 我的Android进阶之旅------>Android自定义View实现带数字的进度条(NumberProgressBar)

    今天在Github上面看到一个来自于 daimajia所写的关于Android自定义View实现带数字的进度条(NumberProgressBar)的精彩案例,在这里分享给大家一起来学习学习!同时感谢 ...

  2. 简单实用的纯CSS百分比圆形进度条插件

    percircle是一款简单实用的纯CSS百分比圆形进度条插件.你不需要做任何设置,只需要按该圆形进度条插件提供的标准HTML结构来编写代码,就可以生成一个漂亮的百分比圆形进度条. 首先要做的就是引入 ...

  3. canvas绘制百分比圆环进度条

    开发项目,PM会跟踪项目进度:完成某个事情,也可以设置一个完成的进度. 这里用canvas绘制一个简单百分比圆环进度条. 看下效果: 1. 动画方式   2. 静默方式   // 贴上代码,仅供参考 ...

  4. 仿微信中加载网页时带线行进度条的WebView的实现

    finddreams:http://blog.csdn.net/finddreams/article/details/44172639 为了仿微信中加载网页时带进度条的WebView的实现,首先我们来 ...

  5. QTableView带可编辑进度条

    main文件与上一个例子完全一致,也使用QStandardItemModel,关键是有这句:QStandardItem.setEditable(false);  继承QAbstractItemDele ...

  6. Android 自定义view --圆形百分比(进度条)

    转载请注明出处:http://blog.csdn.net/wingichoy/article/details/50334595 注:本文由于是在学习过程中写的,存在大量问题(overdraw onDr ...

  7. 给H5页面添加百分比的进度条,精确度高

    进度条样式地址:http://sandbox.runjs.cn/show/6vxbxjrf SVG圆环样式地址:http://sandbox.runjs.cn/show/3ho1qpe9 原理:由于H ...

  8. 在ProgressBar上加文字----显示百分比的进度条

    http://www.cnblogs.com/3dant/archive/2011/04/25/2026776.html

  9. 使用ajax实现简单的带百分比进度条

    需求:当进行文件上传保存等操作时,能在页面显示一个带百分比的进度条,给用户一个好的交互体验 实现步骤 JSP页面 1.添加table标签 <table id="load" w ...

随机推荐

  1. 转:走近NoSQL数据库的四大家族

    在目前的企业IT架构中,系统管理员以及DBA都会考虑使用NoSQL数据库来解决RDBMS所不能解决的问题,特别是互联网行业.传统的关系型数据库主要以表(table)的形式来存储数据,而无法应对非结构化 ...

  2. UI-UIScrollView

    - (void)viewDidLoad { [super viewDidLoad]; scrollView = [[UIScrollView alloc] initWithFrame:CGRectMa ...

  3. Visual Studio 2013中用VSIX创建项目模版

    我会一步一步解释: 我的一个项目里有5个工程, 我想用其中的4个去创建一个新的工具模版,我还想把他们都放到一个文件夹下面当我用这个模版创建新的工程时.注意我的初始化项目,我想把他们转换成一个模版(我不 ...

  4. H264的start code是什么?

    H.264起始码 在网络传输h264数据时,一个UDP包就是一个NALU,解码器可以很方便的检测出NAL分界和解码.但是如果编码数据存储为一个文件,原来的解码器将无法从数据流中分别出每个NAL的起始位 ...

  5. Python爬虫--抓取糗事百科段子

    今天使用python爬虫实现了自动抓取糗事百科的段子,因为糗事百科不需要登录,抓取比较简单.程序每按一次回车输出一条段子,代码参考了 http://cuiqingcai.com/990.html 但该 ...

  6. Leetcode 1020. Number of Enclaves

    dfs或者bfs class Solution: def dfs(self, A, rows, cols, i, j): if not (0 <= i < rows and 0 <= ...

  7. 基功太差,怨不得天,得下苦功——WAP面试,正式招聘号角响起

    WAP面试,直接考察coding能力. 面试官是一个日本先生.人超级Nice.一直朝我微笑. 简短的self-introdution后,就让写代码了. (欧巴桑昨天面的,回去后就把题目告诉我们了,我昨 ...

  8. gcc编译 汇编 选项

    gcc生成main.out的步骤分解:<blockquote>main.c-----(-S 编译)-------->main.s-------(-c 汇编)------->ma ...

  9. 高级C/C++编译技术之读书笔记(三)之动态库设计

    最近有幸阅读了<高级C/C++编译技术>深受启发,该书深入浅出地讲解了构建过程(编译.链接)中的各种细节,从多个角度展示了程序与库文件或代码的集成方法,提出了面向代码复用和系统集成的软件架 ...

  10. bzoj 4753 最佳团体

    Written with StackEdit. Description \(JSOI\)信息学代表队一共有N名候选人,这些候选人从\(1\)到\(N\)编号.方便起见,\(JYY\)的编号是\(0\) ...