2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、調(diào)色板調(diào)色板概述調(diào)色板概述每個(gè)應(yīng)用程序都有自己的調(diào)色板使用調(diào)色板時(shí)要先向系統(tǒng)申請(qǐng)調(diào)色板分為前臺(tái)調(diào)色板和后臺(tái)調(diào)色板windows為優(yōu)先級(jí)高的程序分配前臺(tái)調(diào)色板.我們經(jīng)常會(huì)發(fā)現(xiàn)當(dāng)啟動(dòng)一個(gè)大一點(diǎn)的程序時(shí)桌面和其他應(yīng)用程序的顏色變得粗糙起來(lái)就是因?yàn)槠渌麘?yīng)用程序的調(diào)色板正在轉(zhuǎn)為后臺(tái)調(diào)色板.Windows系統(tǒng)內(nèi)部保留了一個(gè)20種顏色的調(diào)色板用來(lái)顯示窗口菜單等通用界面每個(gè)設(shè)備上下文都擁有一個(gè)邏輯調(diào)色板如果要使用內(nèi)部系統(tǒng)調(diào)色板(20種顏色)之外的顏色則

2、應(yīng)該創(chuàng)建一個(gè)新的邏輯調(diào)色板并將其選入到設(shè)備上下文中.再把設(shè)備上下文中的邏輯調(diào)色板實(shí)現(xiàn)到系統(tǒng)調(diào)色板中新的顏色才能實(shí)現(xiàn).在邏輯調(diào)色板被實(shí)現(xiàn)到系統(tǒng)調(diào)色板時(shí)Windows會(huì)建立一個(gè)調(diào)色板映射表當(dāng)設(shè)備上下文用邏輯調(diào)色板中的顏色繪圖時(shí)GDI繪圖函數(shù)會(huì)查詢調(diào)色板映射表以把像素值從邏輯調(diào)色板的索引轉(zhuǎn)換成系統(tǒng)調(diào)色板的索引.創(chuàng)建調(diào)色板BOOLCreatePalette(LPLOGPALETTElpLogPalette)其中l(wèi)pLogPalette是一個(gè)指向

3、LOGPALETTE結(jié)構(gòu)的指針typedefstructtagLOGPALETTEWDpalVersionwindows版本號(hào)一般是0x300WDpalNumEntries調(diào)色板中顏色表項(xiàng)的數(shù)目PALETTEENTRYpalPalEntry[1]每個(gè)表項(xiàng)的顏色和使用方法LOGPALETTEtypedefstructtagPALETTEENTRYBYTEpeRed紅(0255)BYTEpeGreen綠BYTEpeBlue藍(lán)BYTEpeFl

4、ags一般為0PALETTEENTRY上面只是建立了一個(gè)邏輯調(diào)色板而邏輯調(diào)色板只是一張孤立的顏色表并不能對(duì)系統(tǒng)產(chǎn)生影響所以要使用調(diào)色板還需要下面這些函數(shù)CPalettePalette(CPalettepPaletteBOOLbFceBackground)這個(gè)函數(shù)用來(lái)將一個(gè)調(diào)色板載入設(shè)備上下文第一個(gè)參數(shù)是一個(gè)調(diào)色板指針第二個(gè)參數(shù)用來(lái)指定調(diào)色板作為前景色還是背景色使用為TURE時(shí)作為背景色使用為FALSE時(shí)當(dāng)窗口是活動(dòng)窗口或活動(dòng)窗口的子窗口

5、是調(diào)色板將做為前景色使用否則做為背景色來(lái)使用.如果使用調(diào)色板的是一個(gè)內(nèi)存設(shè)備上下文則該參數(shù)被忽略.UINTRealizePalette()該函數(shù)把設(shè)備上下文中的邏輯調(diào)色板實(shí)現(xiàn)到系統(tǒng)調(diào)色板中函數(shù)的返回值表明調(diào)色板映射表中有多少項(xiàng)被改變了這兩個(gè)函數(shù)的使用如下:CPalettepOldPaletteCWindowDCdc(this)pOldPalette=dc.Palette(Windows是一個(gè)多任務(wù)操作系統(tǒng),可以同時(shí)運(yùn)行多個(gè)程序。如果有幾

6、個(gè)程序都要設(shè)置調(diào)色板,就有可能產(chǎn)生沖突。為了避免這種沖突,Windows使用邏輯調(diào)色板邏輯調(diào)色板來(lái)作為使用顏色的應(yīng)用程序和系統(tǒng)調(diào)色板(物理調(diào)色板)之間的緩沖。圖11.1調(diào)色板工作原理在Windows中,應(yīng)用程序是通過(guò)一個(gè)或多個(gè)邏輯調(diào)色板來(lái)使用系統(tǒng)調(diào)色板(物理調(diào)色板)。在256色系統(tǒng)調(diào)色板中,Windows保留了20種顏色作為靜態(tài)顏色,這些顏色用作顯示W(wǎng)indows界面,應(yīng)用程序一般不能改變。缺省的系統(tǒng)調(diào)色板只包含這20種靜態(tài)顏色,調(diào)色板

7、的其它項(xiàng)為空。應(yīng)用程序要想使用新的顏色,必須將包含有所需顏色的邏輯調(diào)色板實(shí)現(xiàn)到系統(tǒng)調(diào)色板中。在實(shí)現(xiàn)過(guò)程中,Windows首先將邏輯調(diào)色板中的項(xiàng)與系統(tǒng)調(diào)色板中的項(xiàng)作完全匹配,對(duì)于邏輯調(diào)色板中不能完全匹配的項(xiàng),Windows將其加入到系統(tǒng)調(diào)色板的空白項(xiàng)中,系統(tǒng)調(diào)色板總共有236個(gè)空白項(xiàng)可供使用,若系統(tǒng)調(diào)色板已滿,則Windows將邏輯調(diào)色板的剩余項(xiàng)匹配到系統(tǒng)調(diào)色板中盡可能接近的顏色上。每個(gè)設(shè)備上下文都擁有一個(gè)邏輯調(diào)色板,缺省的邏輯調(diào)色板只有

8、20種保留顏色,如果要使用新的顏色,則應(yīng)該創(chuàng)建一個(gè)新的邏輯調(diào)色板并將其選入到設(shè)備上下文中。但光這樣還不能使用新顏色,程序只有把設(shè)備上下文中的邏輯調(diào)色板實(shí)現(xiàn)到系統(tǒng)調(diào)色板中,新的顏色才能實(shí)現(xiàn)。在邏輯調(diào)色板被實(shí)現(xiàn)到系統(tǒng)調(diào)色板時(shí),Windows會(huì)建立一個(gè)調(diào)色板映射表。當(dāng)設(shè)備上下文用邏輯調(diào)色板中的顏色繪圖時(shí),GDI繪圖函數(shù)會(huì)查詢調(diào)色板映射表以把像素值從邏輯調(diào)色板的索引轉(zhuǎn)換成系統(tǒng)調(diào)色板的索引,這樣當(dāng)像素被輸出到視頻內(nèi)存中時(shí)就具有了正確的顏色值。圖1

9、1.2說(shuō)明了這種映射關(guān)系,從圖中讀者可以體會(huì)到邏輯調(diào)色板的緩沖作用。在該圖中,GDI繪圖函數(shù)使用邏輯調(diào)色板的索引1中的顏色來(lái)繪圖,通過(guò)查詢調(diào)色板映射表,得知系統(tǒng)調(diào)色板中的第23號(hào)索引與其完全匹配,這樣實(shí)際輸出到視頻內(nèi)存中的像素值是23。注意圖中還演示了顏色的不完全匹配,即邏輯調(diào)色板中的索引15和系統(tǒng)調(diào)色板中的索引46。每個(gè)要使用額外顏色的窗口都會(huì)實(shí)現(xiàn)自己的邏輯調(diào)色板,邏輯調(diào)色板中的每種顏色在系統(tǒng)調(diào)色板中都有相同或相近的匹配。調(diào)色板的實(shí)現(xiàn)

10、優(yōu)先權(quán)越高,匹配的精度也就越高。Windows規(guī)定,活動(dòng)窗口的邏輯調(diào)色板(如果有的話)具有最高的實(shí)現(xiàn)優(yōu)先權(quán)。這是因?yàn)榛顒?dòng)窗口是當(dāng)前與用戶交互的窗口,應(yīng)該保證其有最佳的顏色顯示。非活動(dòng)窗口的優(yōu)先權(quán)是按Z順序自上到下確定的(Z順序就是重疊窗口的重疊順序)。活動(dòng)窗口有權(quán)將其邏輯調(diào)色板作為前景調(diào)色板實(shí)現(xiàn),非活動(dòng)窗口則只能實(shí)現(xiàn)背景調(diào)色板。提示:術(shù)語(yǔ)活動(dòng)窗口(Activewindow)或前臺(tái)窗口(Fegroundwindow)是指當(dāng)前與用戶交互的窗

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論