幾種DC及區別

2021-09-05 15:47:11 字數 1178 閱讀 9367

cclientdc:(客戶區裝置上下文)用於客戶區的輸出,與特定視窗關聯,

可以讓開發者訪問目標視窗中客戶區,其建構函式中包含了getdc,析構函

數中包含了releasedc:

cclientdc::cclientdc(cwnd* pwnd)

cclientdc::~cclientdc()

用法是:

cclientdc dc(this);//this一般指向本視窗或當前活動檢視

dc.textout(10,10,str,str.getlength());//利用dc輸出文字,如果是在

cscrollview中使用,還要注意呼叫onpreparedc(&dc)調整裝置上下文的

座標。cpaintdc用於響應視窗重繪訊息(wm_paint)是的繪圖輸出。

cpaintdc在建構函式中呼叫beginpaint()取得裝置上下文,在析構函式中

呼叫endpaint()釋放裝置上下文。endpaint()除了釋放裝置上下文外,還

負責從訊息佇列中清除wm_paint訊息。因此,在處理視窗重畫時,必須

使用cpaintdc,否則wm_paint訊息無法從訊息佇列中清除,將引起不

斷的視窗重畫。cpaintdc也只能用在wm_paint訊息處理之中。

cpaintdc::cpaintdc(cwnd* pwnd)

cpaintdc::~cpaintdc()

cwindowdc:關聯一特定視窗,允許開發者在目標視窗的任何一部分進行

繪圖,包含邊界與標題,這種dc同wm_ncpaint訊息一起傳送

cwindowdc與cclientdc,cpaintdc的區別:

cwindowdc可在非客戶區繪製圖形,而cclientdc,cpaintdc只

能在客戶區繪製圖形。

cwindowdc下座標原點是在螢幕的左上角,cclientdc,cpaintdc

下座標原點是在客戶區的左上角。

cclientdc與cpaintdc的區別:

cpaintdc的物件一般用在onpaint內以響應windows訊息wm_paint,

自動完成繪製,在整個視窗內進行重畫,

維持原有視窗完整性。

cclientdc應用在非響應windows訊息wm_paint的情況下,進行實時

繪製,繪製的區域內被重畫。

trackback:

示波器中AC和DC耦合的區別

首先是耦合的概念 耦合是指兩個或者兩個以上的電路元件和電網路等的輸出和輸出之間的相互影響和緊密影響,輸入和輸出側之間存在能量的傳輸的線性。簡而言之就是輸入和輸出之間的相互影響。示波器的輸入耦合屬於訊號直接耦合,一邊有兩種方式,分別是直流模式和交流模式。直流耦合dc couping 就是直通,交流直流...

幾種動態分配記憶體的方法及區別

1 malloc 函式 void malloc unsigned int size 在記憶體的動態分配區域中分配乙個長度為size的連續空間,如果分配成功,則返回所分配記憶體空間的首位址,否則返回null,申請的記憶體不會進行初始化。2 calloc 函式 void calloc unsigned ...

CA(載波聚合)與DC(雙連線)區別

二者本質上是相同的 都是通過第二個 第三個或更多的小區來為同乙個ue提供服務,以提公升使用者體驗。區別 ca僅限於同一種無線接入技術 eutra 內,大多數時候是同乙個巨集站下的不同小區聚合,可以看做lte內的dc dc是lte和其他3gpp無線接入技術間的,現在最著名en dc eutran nr...