2024年2月21日发(作者:)

VB获取鼠标位置的颜色值:

界面如下:

代码如下:

Option Explicit

Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long,

ByVal x As Long, ByVal y As Long, _

ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As

Long, ByVal xSrc As Long, _

ByVal ySrc As Long, ByVal dwRop As Long) As Long

Private Declare Function GetCursorPos Lib "user32" (lpPoint As

POINTAPI) As Long

Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As

Long ‘API

Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long,

ByVal x As Long, _

ByVal y As Long) As Long

Private Type POINTAPI

x As Long

y As Long

End Type

Private Sub Form_Load()

End Sub

Private Sub Timer1_Timer()

Dim a As POINTAPI, Myhwnd As Long, MyDC As Long, r1 As Long

GetCursorPos a

MyDC = GetDC(Myhwnd)

r1 = GetPixel(MyDC, a.x, a.y)

If r1 = -1 Then

BitBlt , 0, 0, 1, 1, MyDC, a.x, a.y, vbSrcCopy

r1 = (0, 0)

Else

(0, 0), r1

End If

n = "RGB= " + Hex$(r1)

lor = r1

End Sub

Private Sub Command1_Click()

Unload Me

End Sub

运行效果如下: