Slik bruker Int å få den farge RGB-koden

Windows API-bruk en COLORREF å representere en farge. Den windows.h header definerer en COLORREF som en DWORD, som er en 32-bits int type. Det er flere makroer er utformet til å initialisere og lesing fra et COLORREF, men de kan også bli behandlet som en int. Kodingen er grei, og undersøker makro definisjoner kan gi deg større innsikt i måter å jobbe med verdiene.

Bruksanvisning

1 Bygg en COLORREF bruker heltall røde, grønne og blå verdier ved hjelp av RGB makro:
COLORREF myColor = RGB (255, 255, 0); //Gul

2 Lag en COLORREF ved eksplisitt å bruke et heltall konstant. I heksadesimale, innholdet i en COLORREF heltall ligne 0x00rrggbb, der rr, gg, og bb er de røde, grønne og blå verdier:
COLORREF myColor = 0x0088FF88; //Lysegrønn

3 Pakk de røde, grønne og blå komponentene ved å bruke de riktige makroene:
BYTE myRedValue = GetRValue (myColor);
BYTE myGreenValue = GetGValue (myColor);
BYTE myBlueValue = GetBValue (myColor);

Hint

  • Selv COLORREFs er ints, utføre aritmetiske operasjoner på dem gir ingen nyttig resultat på grunn av måten de er kodet. Dette betyr at du trenger å skrive spesiell kode for å beregne forskjeller eller gjennomsnitt av farger.