91网首页-91网页版-91网在线观看-91网站免费观看-91网站永久视频-91网站在线播放

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C# WinForm 等待窗體的實現(xiàn)

admin
2021年1月30日 12:50 本文熱度 3679

最近在做一個項目,需要用到等待窗體,在DevExpress下面有SplashScreen控件可以使用,同時也有ProgressIndicator控件能用,但是如果沒有用Dev開發(fā)的話,我們就需要自定義一個等待窗體了。

本項目開放源代碼,下載地址見本文末尾(如果本程序有幫助到您,希望留言評論,感謝)

VS環(huán)境:vs2017,低版本環(huán)境可以使用VS Convert轉(zhuǎn)換工具進(jìn)行版本轉(zhuǎn)換,或者直接看源代碼,復(fù)制到新項目中也可以。

首先,把截圖放上來:(界面沒有優(yōu)化)



多功能Loading中,實現(xiàn)了實時顯示執(zhí)行進(jìn)度的功能,該功能也可以改進(jìn)為用進(jìn)度條顯示。

 

實現(xiàn)的功能比較簡單,就是在程序處理 一些耗時比較多的代碼時,將Loading窗體展示給用戶,并在后臺執(zhí)行耗時操作,這樣能夠給用戶較好的體驗。

核心代碼是我自己寫的一個SplashScreenManager類:有2個方法:1、ShowLoading()2、CloseLoading()


調(diào)用方法舉例:

//實例化一個窗口,窗口需要自己定義哦 SimpleLoading loadingfrm = new SimpleLoading(this); //將Loaing窗口,注入到 SplashScreenManager 來管理 GF2Koder.SplashScreenManager loading = new GF2Koder.SplashScreenManager(loadingfrm); loading.ShowLoading(); //try catch 包起來,進(jìn)行異常處理 try { //模擬耗時操作 for (int i = 0; i < 20; i++) { Thread.Sleep(100); } } catch (Exception) { /*可選處理異常*/ } finally { loading.CloseWaitForm(); }

需要顯示進(jìn)度的話,舉例:

public static bool flag = true; private void button2_Click(object sender, EventArgs e) { flag = true;//flag 為false時候,退出執(zhí)行耗時操作 MultiFuncLoading loadingfrm = new MultiFuncLoading(this); // 將Loaing窗口,注入到 SplashScreenManager 來管理 GF2Koder.SplashScreenManager loading = new GF2Koder.SplashScreenManager(loadingfrm); loading.ShowLoading(); // 設(shè)置loadingfrm操作必須在調(diào)用ShowLoading之后執(zhí)行 loadingfrm.SetTxt("多功能Loaidng界面", "拼命加載中...客官耐心等待", "Please Waitting..."); // try catch 包起來,進(jìn)行異常處理 try { //模擬耗時操作 for (int i = 0; i < 100; i++) { Thread.Sleep(100); loadingfrm.SetJD("當(dāng)前:"+i+"/總計:100","當(dāng)前進(jìn)度:"+i); if (!flag) { break;/*用戶點擊取消執(zhí)行后,跳出循環(huán)*/ } } } catch (Exception) { /*可選處理異常*/ } finally { loading.CloseWaitForm(); } }

附錄:

這個程序的第一個版本參考了 網(wǎng)名為 “八哥” 的一個程序,當(dāng)時我在群里面的時候,感謝他的熱情幫助。

現(xiàn)將我的代碼貼出來吧,里面用的了委托的概念。大家如果不懂的話,可以百度一下,這里給出幾個鏈接:

http://blog.csdn.net/ggz631047367/article/details/44646233

http://www.runoob.com/csharp/csharp-delegate.html

http://blog.csdn.net/sjj2011/article/details/7835200

http://blog.csdn.net/testcs_dn/article/details/37671513

另外附上下載鏈接:V1.0 不支持下載 (該版本有BUG,線程在init函數(shù)中調(diào)用的,可能會出現(xiàn)卡頓,請下載V2版本)

V2版本下載地址:V2.0下載(新建進(jìn)程執(zhí)行耗時操作,該版本不再提供下載)

V3版本下載地址:V3.0下載(主進(jìn)程執(zhí)行耗時操作)


該文章在 2021/1/30 12:50:06 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 成人自拍视频在 | 91影视| 人人97人人干 | 国产人成 | 国产在线观看一区 | 韩国精品一区二 | 欧美一区二区东京 | 国产热の有码 | 韩国日本午 | 欧美日韩综合一区二 | 欧美日韩高清一道 | 国精品99久9在线 | 午夜影视污 | 精品亚洲人旧成在线 | 午夜成人影院在线看 | 日韩欧美精品在线 | 欧美日韩在线一品道 | 国产日韩在线精品 | 国产97碰 | 欧美日韩午夜福利 | 91污在线观 | 国产日产欧美一级 | 日韩一区免费视频 | 国产乱子伦在线视频 | 欧美综合图 | 91页在线视频 | 国产人妖的免 | 精品视频在线 | 午夜福利免费体验 | 欧洲激情网 | 国产高清在线a视频 | 九热视频 | 福利手机电影 | 日本中文字幕乱码a | 乱伦日本影视国产 | 日韩一区二区免费 | 国产精品夜色一 | 日韩第一页在线 | 国产高清视频色拍 | 最新影视剧高清在线观看 | 日韩在线观看 |