返回列表 上一主題 發帖

DOEVENTS 指令很重要

DOEVENTS 指令很重要

天下為公

回復 1# sjgau

期待ing 大大的解說
ss

TOP

回復 2# sunnyso


    今天早上,終於鼓起勇氣 開始寫程式去抓取 盤中的 即時報價。

但是,只要 程式一起動,報價就 停止近來。

我大概 知道是 怎麼 一回事,趕快去網路上 找尋資料

只要在 迴圈堶悼[上
DOEVENTS
就解決了

大概是 100秒鐘的 程式
可以跑 大約 三百萬個 迴圈

可以 正確抓取大約 200筆 報價資料

詳細,等我 下個禮拜整理一下 程式
再把 程式和 輸出 傳送上來
天下為公

TOP

DoEvents 函數
請參閱     範例     特性

暫停執行,以便讓作業系統可以處理其它的事件。

語法

DoEvents( )

請注意

DoEvents 函數會傳回一個Integer,以代表 Visual Basic 的單一版本中所開啟的表單個數,例如, Visual Basic專業版。在其它的應用版本中,DoEvents 會傳回 0。

DoEvents 會將控制權傳給作業系統,然後當作業系統處理完佇列中的事件,並且在 SendKeys 佇列中的所有 Key 都已送出後,控制權會再傳回。

DoEvents 常用於可讓使用者取消一段處理序,例如搜尋檔案。對於一段需花費較長時間的動作而言,使用 Timer 來處理或交由一個 ActiveX EXE 元件會比較好。以後者而言,這個工作可不依靠應用程式而獨立進行,作業系統會以多工方式處理。

注意 請確定以 DoEvents 來放棄控制權的程序,在第一次 DoEvents 傳回之前,不能再度執行,否則會產生不可預期的結果。此外,如果其它的應用程式在您放出控制權時,可能會和您的程序產生互動,那麼也儘量不要使用 DoEvents。
天下為公

TOP

如何 避免 DoEvents 尚未結束之前,
重複 執行 DoEvents???
天下為公

TOP

回復 5# sjgau

doevent 會降低程式效率嗎?
ss

TOP

回復 6# sunnyso


    會,但是 不得不 加上去。
因為,如果不加上去,CPU 就被我的程式給霸佔,
我需要的 DDE報價,就不會進來,
所以,需要 計算他 delay 程式的影響有多大?
天下為公

TOP

回復 7# sjgau


    有何方法計算效率差呢?
ss

TOP

回復 8# sunnyso

我有,請給我 一點點時間,
請慢慢地 密切觀察 這個 板板
天下為公

TOP

回復 9# sjgau

感謝
ss

TOP

        靜思自在 : 人要知福、惜福、再造福。
返回列表 上一主題