天天看点

C#PDA智能程序图片动态变化进度条设计及实现

    前言:smartproject 项目是c#桌面程序的精简版,很多属性和事件可能都没有设置进sdk中。在最近的pda程序中,我没用使用进度条。为了防止用户乱点,最开始想使用windows提供的进度条,但是觉得又不适合,所以就试图用图片切换的方式来实现。

   原理:开启线程切换图片实现显示(子线程不影响主线程而继续往下执行)。

C#PDA智能程序图片动态变化进度条设计及实现
C#PDA智能程序图片动态变化进度条设计及实现

点击质检按钮后跳转(during the new thread running the ui will be changed):

C#PDA智能程序图片动态变化进度条设计及实现

等待业务线程(任务查询)执行完毕后,关闭进度界面。

C#PDA智能程序图片动态变化进度条设计及实现

2-1、ui界面类

2-2、ui线程委托

2-3、主线程调用

注意:调用时thread.sleep(300);的位置。设置此休眠是因为:在while之前窗体还没有被创建,所以为了防止空引用故设置之。如果将thread.sleep(300);放在while循环内第一行,webservice就会陷入无休止的循环请求中,所以要放置在外面。