我在多個設備上使用.NET CF 2.0,這些設備具有不同的顯示功能(特別是彩色/單色),我希望在運行時確定這些顯示功能,但無法找到任何可以訪問此信息的方法。確定.NET Compact Framework 2.0中的屏幕顏色深度/單色?
4
A
回答
3
的P/Invoke GetDeviceCaps與COLORRES的參數nIndex值。
編輯1
這給你顏色深度,而不是實際的 「色」 與 「黑白」。那其實並沒有提供任何地方,因爲它在這個層面上並不重要。
一般來說,您可以查看顏色深度,並說如果它是8位或更少,它很可能是灰度。更大可能是顏色。
當然,OEM可能在單色顯示器上使用了16bpp驅動程序。沒有理由不能做到這一點,因爲單色硬件沒有任何電線或者額外的部分,所以它們只是被浪費在了地板上。
如果您真的需要真的知道它是彩色還是單色,唯一可靠的方法就是通過設置詢問用戶。
2
要獲取此信息,您需要P/Invoke GetDC()和GetDeviceCaps()。這是你的鏈接:
http://blogs.msdn.com/davidklinems/archive/2005/02/02/366042.aspx
相關問題
- 1. 在android中確定屏幕顏色深度
- 2. CreatePatternBrush和屏幕顏色深度
- 3. 顏色深度位?
- 4. 像素深度與顏色深度
- 5. 在Compact Framework中創建單色位圖
- 6. 顏色掃描屏幕
- 7. Alpha混合顏色在.NET Framework精簡2.0
- 8. 不支持顏色深度
- 9. 顏色深度計算
- 10. 同步深度和顏色
- 11. 屏幕顏色過濾
- 12. 單擊按鈕顏色遍佈屏幕
- 13. 承載ActiveX在.NET Compact Framework 2.0中
- 14. Web客戶端在.NET Compact Framework 2.0中
- 15. 在.NET Compact Framework上將位圖轉換爲單色後的純黑色圖像
- 16. 如何表示從16位顏色深度到18位顏色深度?
- 17. 得到在屏幕上的顏色
- 18. 檢測屏幕的主要顏色
- 19. 選擇.Net Compact Framework的正確版本
- 20. .Net 2.0 - ControlPaint.DrawButton使用錯誤的顏色
- 21. Compact Framework 2.0中的SelectedTab?
- 22. 深度+顏色的3D投影
- 23. Sql Server CE 3.5和.NET Compact Framework 2.0 SP2
- 24. .Net Compact Framework 2.0:部署應用程序
- 25. 基於角度到屏幕中心的顏色片段GLSL
- 26. OpenGL-ES 1.1 iPhone - 深度緩衝區導致洋紅色屏幕
- 27. 窗口背景顏色:顯示比指定的顏色更深?
- 28. XNA深度圖重疊區域顏色
- 29. 提取屏幕像素的顏色請
- 30. C++ Direct3D9 GetFrontBufferData 16位顏色深度
這將得到我每個像素的位數,但不告訴我它是否是單色的。 – ZippyBurger 2010-01-22 22:28:49
這就是我所害怕的。謝謝(你的)信息。 – ZippyBurger 2010-01-22 23:41:27