国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
什么是設(shè)備上下文?

接觸MFC時間也不短了,對設(shè)備上下文的認識還是模糊的. 以下是輸入法編程要用到的"輸入法上下文"的一個口語化解釋, 由此有利于對設(shè)備上下文的理解. 輸入法上下文(HIMC):HIMC是什么?在輸入法編程時必然要接觸到輸入法上下文這個術(shù)語,剛接觸時聽起來實在是半懂不懂。由于輸入法是一個插件,它需要和調(diào)用它的應(yīng)用程序通訊,在輸入法中生成的編碼及重碼信息保存在哪里應(yīng)用程序才能正確的讀取呢?答案就在于輸入法上下文。輸入法上下文是由User.exe(一個系統(tǒng)進程)為應(yīng)用程序分配的內(nèi)存句柄,在應(yīng)用程序中啟動的輸入法在這塊內(nèi)存中寫入數(shù)據(jù),User.exe再將數(shù)據(jù)傳遞到應(yīng)用程序。 設(shè)備上下文(DC)我們不妨這樣理解: 兩個實體: 1. 一個窗口對象, 2. 要顯示此窗口的設(shè)備(顯示器,打印機等). 三個問題: 1. 這兩個對象怎么通訊呢? 2.假設(shè)要在窗口上(100,200)位置顯示的"ABCXXX", 這個字符串和坐標信息存放在哪里,怎樣傳給設(shè)備呢? 3. 假設(shè)要知道設(shè)備上顯示的字體大小或背景色,那么窗口對象從哪里去得到呢? 答案就在于設(shè)備上下文^-^ 。一個窗口對象創(chuàng)建時就會被分配一塊專門用于設(shè)備的內(nèi)存,窗口要顯示的內(nèi)容就寫到這里,要獲取設(shè)備的屬性也從這里拿(不知道能不能把設(shè)備上下文理解為窗口對象和設(shè)備之間的一塊共享內(nèi)存呢, 我想大概就是這樣.). 而我們對這塊內(nèi)容的合法訪問方式就是, 建一個CDC對象,把對象和這塊內(nèi)存關(guān)聯(lián)起來,通過CDC的方法進行通訊. 所以,兼容DC的理解就是: 生成這塊內(nèi)存的一個拷貝,在拷貝中做好顯示內(nèi)容處理,再把內(nèi)容復(fù)制到原DC. 轉(zhuǎn)自 sodickbird的Blog 

本文來自CSDN博客,
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
GDI編程小結(jié)
用戶界面對象的線程親緣性第二篇: 設(shè)備上下文
一文詳解MFC DC設(shè)備上下文繪圖
CMetaFileDC::CreateEnhanced
對Windows程序中設(shè)備上下文DC(device context)的理解
.NET 中進程、線程、應(yīng)用程序域、對象上下文總結(jié)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服