Red de conocimiento informático - Problemas con los teléfonos móviles - vb RGB Cómo entender esta función

vb RGB Cómo entender esta función

Está muy detallado arriba, me gustaría agregar algunos más (no me elijas como la mejor respuesta). Cada píxel de cualquier color o patrón que ves en la pantalla de tu computadora se compone de 3 colores: rojo, verde y azul. Si cree que los píxeles son demasiado pequeños para verlos con claridad, puede mirar la pantalla del televisor y será lo mismo. Por lo tanto, diferentes combinaciones de brillo de los tres colores básicos (rojo-R, verde-G, azul-B) forman diferentes colores. Tomando como ejemplo el color verdadero de 24 bits, cada píxel de la pantalla se compone de rojo, verde y azul. se compone de 1 byte cada uno (8 bits cada uno). El rango de valores de cada color es 0~255, por lo que muestra blanco - (255R+255G+255B), gris (127R+127G+), negro (0~255B). negro (127G+), negro (127B), negro (127G+), negro (127G+), negro (127B), negro (127G+)127B), negro (0R+0G + 0B), violeta (255R+0G+255B), amarillo (255R+255G+0B), cian (0R+255G+255B), etc. Los colores utilizados en la programación de VB también son de 24 bits, generalmente representados por &H00BBGGRR, donde BB, GG y RR son todos hexadecimales de 2 dígitos y el rango de valores es 00-FF (que representan decimales de 0 a 255 respectivamente), por supuesto. , este método hexadecimal a veces es demasiado fácil de leer, por lo que también hay una función RGB (). Los tres parámetros en esta función son decimales y el valor de retorno de la función es &H00BBGGRR. El color representado por H00BBGGRR también es un color de 24 bits. , generalmente usa &H00BBGGRR para representar el color de este color. La función devuelve la forma decimal de &H00BBGGRR, que ambos VB manejan de manera idéntica.

Si RBG() requiere la entrada de parámetros hexadecimales, debe agregar "&H" antes de cada parámetro para activar la función de conversión de VB y forzar la conversión a decimal. Esto es lo que le da El significado de "&H" en. el programa.

Para las funciones Derecha() e Izquierda() en esa oración, el valor de color (decimal) obtenido de las coordenadas 697x ~ 421y escritas desde el objeto dc se fuerza a convertirse al formato hexadecimal (&H00BBGGRR Formato), actuando respectivamente sobre los valores de R, G y B.

Parece que todo el programa tiene como función sacar el valor RGB de un píxel, descomponerlo en R, G y B, y luego recombinarlo en un valor RGB, pero es lo mismo antes. y después, sin ningún cambio. Por lo tanto, se puede acortar a "&H" & Right(Hex(GetPixel(dc, 697, 421)),6), o simplemente usar GetPixel(dc,697,421), lo cual creo que está bien.