2012-01-16 55 views
1

我如何獲得屏幕的顏色?我想知道如果屏幕設置爲真彩色(32位)或高顏色(16位)。如何獲得屏幕的顯示深度?

我一直在谷歌上搜索,並認爲這將是很容易找到,但我無法找到任何東西(也許我必須對我的谷歌技能工作?)

回答

6

您可以使用BitsPerPixel屬性:

int bitsPerPixel = Screen.PrimaryScreen.BitsPerPixel; 
+1

我會寫同樣的。此外,完整的名稱是System.Windows.Forms.Screen,如果有人應該懷疑 – codymanix 2012-01-16 08:56:54

+0

謝謝,就是這樣:) – Martijn 2012-01-16 09:11:30

0

DirectX9 API中的GetDisplayMode函數可以幫助您,我猜。您將在包含必要的頭文件後簡單地編寫兩條語句;

D3DDISPLAYMODE currentMode; 
pDevice->GetDisplayMode(0,&currentMode); 

之後,您可以檢查像深度值;

currentMode->Format 

我確定還有其他的WinAPI函數,但這就是我所知道的。

編輯:沒有看到你提到的Winforms。這是沒用的然後