溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何體現(xiàn)VB.NET DoEvents重要性

發(fā)布時間:2021-10-27 17:47:53 來源:億速云 閱讀:115 作者:柒染 欄目:編程語言

這篇文章將為大家詳細(xì)講解有關(guān)如何體現(xiàn)VB.NET DoEvents重要性,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

VB.NET編程語言應(yīng)用方式靈活,運(yùn)用范圍廣泛,深受廣大編程人員的喜愛。不過要想熟練的掌握這一語言的應(yīng)用技巧,也并不是非常容易的。其中,各種函數(shù)的應(yīng)用方式就是一個比較難啃的骨頭。

有很多程序員都不了解VB.NET DoEvents。DoEvents函數(shù)可以臨時返回控制器給操作系統(tǒng),并允許它完成其他可能發(fā)生的事件。

當(dāng)一個程序的代碼需要花很長的時間去執(zhí)行,比如在一個復(fù)雜的數(shù)學(xué)計算的時候,你需要運(yùn)用VB.NET DoEvents。在你代碼適當(dāng)?shù)奈恢谜{(diào)用DoEvents函數(shù),能夠改變程序響應(yīng)的時間。

這里有一個例子:在VB里創(chuàng)建一個標(biāo)準(zhǔn)的EXE文件并放置一個CommandButton和一個TextBox,然后,將下面的代碼放入CommandButton的單擊事件處理程序中:

Private Sub Command1_Click()   Dim i As Long, j As Long   For i = 1 To 100   Text1.Text = i   For j = 1 To 100000   NextNext   Text1.Text = “Done”   End Sub

你可以發(fā)現(xiàn)這個程序中有嵌套式循環(huán),循環(huán)將持續(xù)幾秒鐘。每次,外部循環(huán)反復(fù)執(zhí)行I

  • VB.NET生存期開始與結(jié)束

  • 各種VB.NET訪問級別概念簡述

  • 特殊的VB.NET數(shù)據(jù)類型概述

  • VB.NET泛型類型基本概念詳解

  • VB.NET System.IO在實際編程中的作用體現(xiàn)

的值顯示在text box中。當(dāng)循環(huán)結(jié)束時,Done也顯示出來了。

在你運(yùn)行這個程序的時候究竟發(fā)生了什么呢?然而,text box不會改變直到Done顯示

出來。問題在于在執(zhí)行循環(huán)的時候系統(tǒng)非常繁忙,而循環(huán)語句中的I要顯示在text box里面,這延遲windows隊列。當(dāng)循環(huán)完成以后,所有的請求都被執(zhí)行。

現(xiàn)在在Text1.Text = i調(diào)用VB.NET DoEvents。當(dāng)你運(yùn)行程序的時候,你會發(fā)現(xiàn)text box記下了I的值。調(diào)用DoEvents函數(shù)可以釋放系統(tǒng)內(nèi)存來完成其他請求,然后將控制器返回給VB程序。

雖然調(diào)用VB.NET DoEvents是以速度為代價,但是可以讓程序有時間執(zhí)行其他的事件,這個代價是值得的。

關(guān)于如何體現(xiàn)VB.NET DoEvents重要性就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI