功能需求:
如果程序中会执行一个耗时的计算过程,我想在用户点击按钮后,弹出一个进度条窗口,显示正在执行的进度(最好能带有百分比),执行完成后,进度条窗口关闭,回到主程序窗口。 在关闭子窗口之前父窗体不能点击操作。 ====================================================== 先设计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. STM32F407: USART 遇到的问题

    今天初次使用STM32F407进行USART串口通讯实验,按照f103的代码写完了,发现没法发送数据, 查看文档后发现是由于没有将端口映射到USART1,然后添加如下代码: 1 GPIO_PinAFC ...

  2. 转:session和cookie以及catch三者的区别

    以前实现数据的缓存有很多种方法,有客户端的Cookie,有服务器端的Session和Application. 其中Cookie是保存在客户端的一组数据,主要用来保存用户名等个人信息. Session则 ...

  3. python基础之函数名称空间与作用域

  4. YUI笔记 1 模块加载

    我们通常开发js程序就是使用<script>标签把脚本引入到页面中进行开发,如果是简单的逻辑还好,但是如果是比较庞大的大规模js开发,可能会出现下面的问题: 1.  <script& ...

  5. 深入浅出Eclipse Modeling Framework (EMF)

    Eclipse Modeling Framework (EMF),简单的说,就是Eclipse提供的一套建模框架,可以用EMF建立自己的UML模型,设计模型的XML格式或编写模型的java代码.EMF ...

  6. 你所不知道的,Java 中操作符的秘密?

    在 Java 编程的过程中,我们对数据的处理,都是通过操作符来实现的.例如,用于赋值的赋值操作符.用于运算的运算操作符等.用于比较的比较操作符,还包括逻辑操作符.按位操作符.移位操作符.三元操作符等等 ...

  7. Windows GVLK密钥对照表(KMS激活专用

    以下key来源于微软官网:https://technet.microsoft.com/en-us/library/jj612867.aspx Windows Server 2016 操作系统 KMS激 ...

  8. Python之contextlib库及源码分析

    Utilities for with-statement contexts __all__ = ["contextmanager", "closing", &q ...

  9. 剑指offer-第六章面试中的各项能力之总结

  10. 真正明白c语言二级指针

    指针是C语言的灵魂,我想对于一级指针大家应该都很熟悉,也经常用到:比如说对于字符串的处理,函数参数的“值,结果传递”等,对于二级指针或者多级指针,我想理解起来也是比较容易的,比如二级指针就是指向指针的 ...