显卡的设计界面中都有调整视频亮度对比度的功能,请问我如何编程实现?

解决方案 »

  1.   

    Option ExplicitPrivate Declare Function SendScreenMessage Lib "user32" _
       Alias "SendMessageA" _
      (ByVal hwnd As Long, _
       ByVal wMsg As Long, _
       ByVal wParam As Long, _
       lParam As Any) As LongPrivate Const MONITOR_ON = -1&
    Private Const MONITOR_LOWPOWER = 1&
    Private Const MONITOR_OFF = 2&
    Private Const SC_MONITORPOWER = &HF170&
    Private Const WM_SYSCOMMAND = &H112'关闭 显示器
    Private Function MonitorOff(Form As Form)
        
        Call SendScreenMessage(Form.hwnd, WM_SYSCOMMAND, SC_MONITORPOWER, ByVal MONITOR_OFF)End Function'开启显示器
    Private Function MonitorOn(Form As Form)
        
        Call SendScreenMessage(Form.hwnd, WM_SYSCOMMAND, SC_MONITORPOWER, ByVal MONITOR_ON)End Function
      

  2.   

    非常非常感谢 peckerlu() ,期待亮度对比度问题的方案。
      

  3.   

    就是用 directshow 或者 调用显卡驱动。
      

  4.   

    调整屏幕亮度需要使用这个API:SetDeviceGammaRamp代码很简单,查一下MSDN
      

  5.   

    SetDeviceGammaRamp 的第二个参数 怎么用?我看c++中 好像是 word[3][256],vb中应该怎么对应?那位高手在帮忙看看。
      

  6.   

    http://www.google.com/search?q=VB%20SetDeviceGammaRamp&hl=zh-CN&lr=&nxpt=10.134210891149857244538自己看看