extraheren de rode , groene en blauwe ( RGB ) componenten van een kleurcode in Visual Basic 6.0 ( VB6 ) is behulpzaam bij het converteren van kleurgegevens formaten tussen verschillende programma's . VB6 verschaft een " RGB " functie uit hun kleuren rood , groen en blauw te zetten in een numerieke " Long" gegevenstype , maar mist elke ingebouwde functie om te zetten in de andere richting . Daarnaast worden kleurcodes in VB6 opgeslagen met de little endian formaat , wat betekent bytes worden opgeslagen in het geheugen in omgekeerde volgorde . Extract " RGB " waarden uit kleurcodes door het toevoegen van een subroutine om de codes automatisch te verwerken en om te zetten voor je. Instructies 1 Open uw VB6 bestand in een editor , zoals Microsoft Visual Studio 6.0 . Kopen van 2 Maak een subroutine om een VB6 kleurcode te zetten in zijn rode , groene en blauwe componenten door toevoeging van de volgende code in het bestand : Public Sub Hex2RGB ( lColor As Long , r Zoals Byte , g Zoals Byte , b Zoals Byte ) Dim HColor als Koord < br > Dim n als Byte Dim strHexVal als Koord strHexVal = Hex $ ( lColor ) op strHexVal = Right ( ( strHexVal ) , 6 ) op Twitter Voor n = 1 To ( 6 - Len ( strHexVal ) ) op HColor = HColor & " 0 " Volgende HColor = HColor & strHexVal r = CByte ( " & H " & Right $ ( HColor , 2 ) ) op Twitter g = CByte ( " & H " & Mid $ ( HColor , 3 , 2 ) ) b = CByte ( " & H " & Left $ ( HColor , 2 ) ) End Sub De kleurcode wordt omgezet van " Long " naar " Hex " voor eenvoudiger verwerking . De " Right ( ( strHexVal ) , 6) " commando wordt iedere extra karakters aan het begin van de tekenreeks als " & H " De lus "voor" voegt 0 voordat elk personage om eventuele opmaak problemen op te lossen . VB6 gebruikt weinig endian om kleurwaarden te slaan , zodat de " rgb " bytes eigenlijk in omgekeerde volgorde worden opgeslagen als " BBGGRR . " De code maakt gebruik van de functie " Cbyte " uit elkaar te splitsen van de string naar de rode , groene en blauwe waarden op te halen en op te slaan elk als een ' byte '. 3 Declare variabelen , stelt een kleur en dan bellen met de subroutine om de kleur code om te zetten door het toevoegen van de volgende code in je functie : Dim r, g , b Zoals Byte Dim lColor As Long lColor = RGB ( 11 , 200 , 25 ) Call Hex2RGB ( lColor , r, g , b ) 4 Sla het bestand VB6 , compileren en uitvoeren van het programma om het omzetten kleurcode .
|