Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As Long Private Declare Function GetDeviceGammaRamp Lib "gdi32" (ByVal hdc As Long, lpv As Any) As Long Private Declare Function SetDeviceGammaRamp Lib "gdi32" (ByVal hdc As Long, lpRamp As Any) As Long Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long) Private Sub SetBrightness(Brightness As Byte) Dim gammaDC As Long gammaDC = GetDC(0&) If Not gammaDC = 0& Then Dim i As Integer, arrayValue As Long, UIarrayValue As Integer Dim gammaArray(0 To 255, 0 To 2) As Integer For i = 0 To 255 arrayValue = i * (CLng(Brightness) + 128) If arrayValue > 65535 Then arrayValue = 65535 Call CopyMemory(UIarrayValue, arrayValue, LenB(UIarrayValue)) gammaArray(i, 0) = UIarrayValue gammaArray(i, 1) = UIarrayValue gammaArray(i, 2) = UIarrayValue Next i Call SetDeviceGammaRamp(gammaDC, gammaArray(0, 0)) End If Call ReleaseDC(0&, gammaDC) End Sub Private Function GetBrightness() As Byte Dim gammaDC As Long gammaDC = GetDC(0&) If Not gammaDC = 0& Then Dim gammaArray(0 To 255, 0 To 2) As Integer Call GetDeviceGammaRamp(gammaDC, gammaArray(0, 0)) GetBrightness = CByte(gammaArray(1, 0) - 128) End If Call ReleaseDC(0&, gammaDC) End Function
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.