Red de conocimiento informático - Computadora portátil - (VB) Cómo obtener el valor de color de un determinado punto en la pantalla

(VB) Cómo obtener el valor de color de un determinado punto en la pantalla

Categoría: Computadora/Red >> Programación >> Otros lenguajes de programación

Descripción del problema:

Si tiene alguna pregunta, solicite ayuda a expertos.

Escribí el programa en vb~

Espero que puedas darme el código

Análisis:

La persona de arriba está siguiendo el script, el error es simple

Simple, primero use WindowsFromPoint para obtener la ventana HWND

Luego use GetDC para obtener hDC

Luego use GetPixel.

Te doy un proceso que completa el cambio del color de fondo de la ventana al color señalado por el mouse:

En caso de error, Reanudar siguiente

Atenuar p como POINTAPI

p>

GetCursorPos p

Dim h As Long, dc As Long

h = WindowFromPoint(p.x, p.y)

ScreenToClient h, p< / p>

dc = GetDC(h)

Me.BackColor = GetPixel(dc, p.x, p.y)

La función se declara de la siguiente manera:

Función de declaración privada WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long

Función de declaración privada GetDC Lib "user32" (ByVal hwnd As Long) As Long

Función de declaración privada GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long

Función de declaración privada GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long

p>

Función de declaración privada ScreenToClient Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long

Tipo privado POINTAPI

x As Long

y As Long

Tipo final