0
也許這是一個新手問題,但我是一個新手。我有一個程序,它做了一個冗長的任務,而它做到了,窗體保持凍結,如果它的最小化它不能最大化等等。我該如何解決這個問題。 此外,程序以循環運行,並在每次迭代中逐行將信息打印到列表框中。問題是,列表框沒有被寫入,直到整個循環結束。我該如何改正這一點。當運行冗長的任務時程序凍結
也許這是一個新手問題,但我是一個新手。我有一個程序,它做了一個冗長的任務,而它做到了,窗體保持凍結,如果它的最小化它不能最大化等等。我該如何解決這個問題。 此外,程序以循環運行,並在每次迭代中逐行將信息打印到列表框中。問題是,列表框沒有被寫入,直到整個循環結束。我該如何改正這一點。當運行冗長的任務時程序凍結
您可以使用Thread或BackgroundWorker來完成您的工作。
從UI調用冗長的代碼將阻止UI線程和應用程序'凍結'。
看看'BackgroundWorker'。 – Blorgbeard
這是因爲你正在UI線程上做東西。在忙於您的計算時,您無法與UI進行交互。您需要在單獨的線程中執行它們(即任務或BackgroundWorker)。關於Google上的SO和資源的問題很多。 –
[WinForm應用程序UI在長時間運行期間掛起]的可能重複(http://stackoverflow.com/questions/1216791/winform-application-ui-hangs-during-long-running-operation) –