c 簡單的進度條UI滯後解決方法

2021-08-18 02:47:39 字數 1695 閱讀 2571

c#實現進度條方法很多,一般專案中簡單的進度條就可以了,但不管是委託還是多執行緒發現都有進度條ui顯示滯後的問題。一般是讓執行緒sleep(500),但我發現還是有點不同步,可能是我太菜了,後來找到使用進度條空間的step()方法可以避免進度條進度與提示不同步問題,這裡為了能使進度條控制項使用方便,寫了個工具類呼叫,這樣簡單方便通用。測試**如下:

progreeebarutil.setprogreessbartip(string.format("當前進度", i));

//////進度條工具類

///publicclassprogreeebarutil }

publicstaticvoidclosepprogreebarfrm()

publicstaticvoidshowprogreebarfrm(objectparentfrm,intminnum,intmaxnum,intstep) }

publicstaticvoidinitprogreebarparam(object objs)

publicstaticvoidsetminvalue(intminnumber)

publicstaticvoidsetmaxvalue(intmaxnumber)

publicstaticvoidsetstep(intstep)

//////重置進度條

//////

//////

publicstaticvoidresetprogressbar(intmaxnumber, intstep, intvalue)

publicstaticvoidstartthread()

//////傳當前進度值

//////

publicstaticvoidsetprogreessbarvalue(objectvalue)

else }

publicstaticvoidsetprogreessbarvalues(objectvalues)

else }

} ///

///傳提示資訊

//////

publicstaticvoidsetprogreessbartip(objectvalue)

else }

} }

簡單的進度條

回車與換行 回車 r本義是游標重新回到本行開頭,r的英文是retrun 換行 n本義是游標往下一行 不一定到下一行行首 n的英文是newline。在windows下,換行就是另起一行,回車就是回到一行的開頭,所以我們在平時編寫檔案時的回車符確切說是回車換行符 enter鍵 即實現換行需要 r n 而...

進度條的簡單實現

首先重申一下幾個概念 1 回車與換行 回車與換行是不同的概念,但很多人都不太清楚二者之間有何區別。回車是回到當前行的行首,而不會換到下一行,如果接著輸入的話,之前的內容會被沖掉,從頭開始寫入,表示為 r。換行顧名思義是換到換到下一行,但不會回到行首。一般enter鍵代表了回車和換行。2 進度條的原理...

簡單進度條的實現

首先讓我們先來看進度條實現的 include include include int main printf n return 0 其中用了乙個函式usleep,在gcc編譯器中,它包含在標頭檔案unistd.h中,其單位為微秒,sleep單位為毫秒,sleep單位為秒。r 表示回車,表示輸出一行後...