Les Snippets

Connexion

Changer la luminosité de l'écran

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 09/06/2007 23:18:21 et initié par Francky23012301 [Liste]
Vue : 4914
Catégorie(s) : API
Langages dispo pour ce code :
- Delphi 5
- VB6
- VB 2005, VB 2008, VB.NET 1.x
- C# 1.x, C# 2.x, C# 3.x
- Voir tous les langages pour ce code snippet



Langage : Delphi 5
Date ajout : 09/06/2007
Posté par Francky23012301 [Liste]
{>>DETERMINATION DE LA LUMINOSITE}
Function FindActualGamma : integer;
var
  hGammaDC : HDC;
  GammaArray: array[0..2,0..255] of word;
begin
  hGammaDC := GetDC(0);
  GetDeviceGammaRamp(hGammaDC, GammaArray);
  ReleaseDC(0, hGammaDC);
  result:=GammaArray[0,1]-128;
end;
{>>MODIFICATION DE LA LUMINOSITE }
Procedure ChangeLuminosity(Brightness: integer);
var
  hGammaDC : HDC;
  GammaArray: array[0..2] of array [0..255] of word;
  Index, ArrayValue: integer;
begin
  hGammaDC := GetDC(0);
  for Index := 0 to 255 do
    begin
    ArrayValue := Index * (Brightness + 128);
    if (ArrayValue > 65535) then ArrayValue := 65535;
    GammaArray[0,Index] := WORD(ArrayValue);
    GammaArray[1,Index] := WORD(ArrayValue);
    GammaArray[2,Index] := WORD(ArrayValue);
    end;
  SetDeviceGammaRamp(hGammaDC, GammaArray);
  ReleaseDC(0, hGammaDC);
end;
{>>DIMINUTION DE LA LUMINOSITE}
procedure TForm1.DownLuminosity_Bt(Sender: TObject);
Var
  i,ActualGamma : integer;
Begin
  ActualGamma:=FindActualGamma;
  For i:=ActualGamma downto 64 do ChangeLuminosity(i);
end;
{>>AUGMENTATION DE LA LUMINOSITE}
procedure TForm1.UpLuminosity_Bt(Sender: TObject);
Var
  i,ActualGamma : integer;
Begin
  ActualGamma:=FindActualGamma;
  For i:=ActualGamma to 128 do ChangeLuminosity(i);
end;
Remarque :
Les API SetDeviceGammaRamp et GetDeviceGammaRamp ne fonctionnent pas avec toutes les cartes vidéos.

Snippets en rapport avec : Ecran, Luminosité

12/09/2006 - Créer une loupe

23/03/2006 - Résolution de l'écran



Codes sources en rapport avec : Ecran, Luminosité

{Delphi} SCREENCAMTURE 0.2
Créer un tutoriel vidéo ? Rien de plus simple ! ScreenCamture permet la capture vidéo de l'écran ou...

{} [FLEX 4/AIR] UN CUBE QUI TOURNE DEVANT L'ECRAN
Bonjour, Voici ma premiere source en Flex (enfin c'est la deuxieme pour dire la vérité, la premie...

{Delphi} BLOODSAVER (LE PLUS GORE DES SCREENSAVERS)
Bonsoir ... Huhh ... Voici un écran de veille sympa, le BloodSaver. Il peut afficher une explosi...

{PDA / PocketPC} CAPTURE ECRAN (SCREENSHOT)
Code simple, il permet de capturer l'image de l'écran du device Le code utilise la fonction BitBl...

{C# / C#.NET} CHANGER LA RESOLUTION DE VOTRE ECRAN, UTILISATION DES API WINDOWS (USER32.DLL)
Cette class permet de changer la resolution de votre ecran, avec les valeurs de largeur et hauteur v...

{Visual Basic, VB6, VB.NET, VB 2005} USERFORM PLEIN ÉCRAN SOUS EXCEL VBA
Les userforms VBA ne possèdent pas de propriété WindowState pour les maximiser ou minimiser à l'éc...

{C / C++ / C++.NET} [WIN32][C][DEV-C++] IMPSCREEN IMPRIME ECRAN PAR HOOK SANS DLL SANS MFC
Outils permettant d'effectuer des imprimes écran en jpeg (par hook clavier), avec tray icone. Fon...

{Visual Basic, VB6, VB.NET, VB 2005} ENREGISTRER L'IMAGE D'UN CONTRÔLE
Cette fonction enregistre l'image d'un contrôle (bouton, Label, MSChart ...) dans un fichier image....

{Visual Basic, VB6, VB.NET, VB 2005} CONVERSIONS COULEUR / RVB / HSI (OPTIMISÉ)
Conversions Variable_Couleur / Rouge_Vert_Bleu / Hue_Saturation_Intensité dans tous les sens (Module...

{Visual Basic, VB6, VB.NET, VB 2005} APPLIQUER UNE RESOLUTION GRÂCE À DIRECTDRAW
DirectDraw (API DirectX), qui permet de lancer des applis en 2D ou 3D va nous servir ici à récupérer...