PixelType定義顯示顏色的方法。PFD_TYPE_RGBA意味著每一位(bit)組代表著紅、綠、藍各分量的值。PFD_TYPE_COLORINDEX 意味著每一位組代表著在彩色查找表中的索引值。本例都是采用了PFD_TYPE_RGBA方式。
● cColorBits定義了指定一個顏色的位數。對RGBA來說,位數是在顏色中紅、綠、藍各分量所占的位數。對顏色的索引值來說,指的是表中的顏色數。
● cRedBits、cGreenBits、cBlue-Bits、cAlphaBits用來表明各相應分量所使用的位數。
● cRedShift、cGreenShift、cBlue-Shift、cAlphaShift用來表明各分量從顏色開始的偏移量所占的位數。
一旦初始化完我們的結構,我們就想知道與要求最相近的系統象素格式。我們可以這樣做:
m_hGLPixelIndex = ChoosePixelFormat(hDC, &pixelDesc);
ChoosePixelFormat接受兩個參數:一個是hDc,另一個是一個指向PIXELFORMATDESCRIPTOR結構的指針&pixelDesc;該函數返回此像素格式的索引值。如果返回0則表示失敗。假如函數失敗,我們只是把索引值設為1并用DescribePixelFormat得到像素格式描述。假如你申請一個沒得到支持的像素格式,則Choose-PixelFormat將會返回與你要求的像素格式最接近的一個值。一旦我們得到一個像素格式的索引值和相應的描述,我們就可以調用SetPixelFormat設置像素格式,并且只需設置一次。
文章來源于領測軟件測試網 http://www.kjueaiud.com/