GdiFlush

此頁(yè)沒(méi)有內(nèi)容條目
內(nèi)容

GdiFlush

VB聲明

Declare Function GdiFlush Lib "gdi32" Alias "GdiFlush" () As Long

說(shuō)明

執(zhí)行任何未決的繪圖操作

返回值

Long,如所有未決的繪圖操作都成功完成,就返回TRUE(非零)。如任何一個(gè)操作失敗,就返回零值

注解

通過(guò)成批合并繪圖操作命令,win32圖形子系統(tǒng)(GDI)可改善繪圖的性能。如調(diào)用一系列繪圖命令,他們都返回布爾值(TRUE表示成功,零表示失?。?,就可將他們置于一個(gè)內(nèi)部GDI隊(duì)列里。此時(shí),函數(shù)可以立即返回。隨后,GDI子系統(tǒng)會(huì)執(zhí)行這些待決的繪圖命令??煽紤]一種最常見(jiàn)的情況。在這種情況下,系統(tǒng)安裝了一塊顯示卡??ㄉ献詭D形處理器或加速器。畫(huà)圖的時(shí)候,GDI只需將圖形命令簡(jiǎn)單的發(fā)送給顯示卡,另其完成實(shí)際的操作。如果必須等待每個(gè)繪圖命令都完成并返回,系統(tǒng)和應(yīng)用程序的性能就會(huì)受到顯示卡繪圖速度的極大限制。所以在這個(gè)時(shí)候,GDI將繪圖命令置于一個(gè)名為“批”(Batch)的隊(duì)列里。這樣一來(lái),系統(tǒng)和應(yīng)用程序就能繼續(xù)運(yùn)行,同時(shí)仍然讓顯示卡進(jìn)行繪圖操作

GdiFlush命令指示應(yīng)用程序進(jìn)入等待狀態(tài),直到所有待決的繪圖操作完成為止。如執(zhí)行的是一個(gè)特殊的GDI繪圖命令,它不會(huì)返回一個(gè)布爾值,那么也會(huì)面臨這種情況。例如,GetPixel函數(shù)需要讀取一個(gè)像素值。但除非所有待決的繪圖完成,否則該函數(shù)不能可靠的完成工作

Top