加入一个Timer,interval设置为100或者50
PrivateTypePOINTAPI
xAsLong
yAsLong
EndType
PrivateDeclareFunctionBitBltLib\"gdi32\"(ByValhDestDCAsLong,ByValxAsLong,ByValyAsLong,ByValnWidthAsLong,ByValnHeightAsLong,ByValhSrcDCAsLong,ByValxSrcAsLong,ByValySrcAsLong,ByValdwRopAsLong)AsLong
PrivateDeclareFunctionGetCursorPosLib\"user32\"(lpPointAsPOINTAPI)AsLong
PrivateDeclareFunctionGetDCLib\"user32\"(ByValhwndAsLong)AsLong
PrivateDeclareFunctionGetPixelLib\"gdi32\"(ByValhdcAsLong,ByValxAsLong,ByValyAsLong)AsLong
PrivateDeclareFunctionScreenToClientLib\"user32\"(ByValhwndAsLong,lpPointAsPOINTAPI)AsLong
PrivateDeclareFunctionWindowFromPointLib\"user32\"(ByValxPointAsLong,ByValyPointAsLong)AsLong
PrivateSubTimer1_Timer()
StaticlXAsLong,lYAsLong
OnLocalErrorResumeNext
DimPAsPOINTAPI,hAsLong,hDAsLong,rAsLong
GetCursorPosP
IfP.x=lXAndP.y=lYThenExitSub
lX=P.x:lY=P.y
\'Label2(0).Caption=lXdefds123\",\"defds123lY
h=WindowFromPoint(lX,lY)
\'Label2(1).Caption=h
hD=GetDC(h)
\'Label2(2).Caption=hD
ScreenToClienth,P
\'Label2(3).Caption=P.xdefds123\",\"defds123P.y
r=GetPixel(hD,P.x,P.y)
Ifr=-1Then
BitBltPicture1.hdc,0,0,1,1,hD,P.x,P.y,vbSrcCopy
r=Picture1.Point(0,0)
Else
Picture1.PSet(0,0),r
EndIf
\'Label2(4).Caption=Hex$(r)
Picture1.BackColor=r
EndSub
<h4class=\"ask\">追问
你给的代码只能得到前台的嘛
|