windows - Color Blind a c ++ program

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har brug for mit program til at 'se' forskellige farver.


Næsten alt, hvad jeg behøver, er en funktion, som fortæller farven på en enkelt pixel på min skærm ved hjælp af x-koordinaten og y-koordinaten. Jeg håber, at der er en funktion som sådan: P


Koordinater går ind.


string color;
TellColor(126, 1024, color);
cout << color;


Farven kommer ud.
Grøn


Jeg gjorde dog nogle søgninger, og jeg fandt en fantastisk funktion, der hedder GetPixel, men så vidt jeg kan vide, kan det kun fortælle farver fra en billedfil. Rett mig, hvis jeg er forkert.


Enhver hjælp er værdsat.

Bedste reference


håber det hjælper


GetPixel-funktionen henter den røde, grønne, blå (RGB) farveværdi af
    pixel ved de angivne koordinater.


COLORREF GetPixel(

    HDC hdc,    // handle of device context  
    int XPos,   // x-coordinate of pixel 
    int nYPos   // y-coordinate of pixel 
   );   


Parametre


hdc


Identificerer enhedens kontekst.


nXPos


Angiver den logiske x-koordinat for pixel, der skal undersøges.


nYPos


Angiver den logiske y-koordinat for pixel, der skal undersøges.


Returværdier


Hvis funktionen lykkes, er returværdien en RGB-værdi. Hvis pixel er uden for
    nuværende klipningsområde er returværdien CLR\_INVALID.
    Bemærkninger


Pixel skal være inden for grænserne for det nuværende klipområde.
Ikke alle enheder understøtter GetPixel. En applikation skal kalde GetDeviceCaps for at bestemme
om en bestemt enhed understøtter denne funktion.


Se også


GetDeviceCaps, SetPixel