VB6 PictureBox.Point或GetPixel始终返回-1

VB6 PictureBox.Point或GetPixel始终返回-1,vb6,picturebox,getpixel,Vb6,Picturebox,Getpixel,我有一个picturebox控件,在其中加载50x160 BMP图像,使用以下方法: Picture1.Picture = LoadPicture(App.Path & "\test.bmp") 加载图片后,我希望获得特定像素的颜色: GetPixel(Picture1.hDC, 0, 0) Picture1.Point(0, 0) 我尝试了8000像素(显然是使用循环),每次函数调用(GetPixel和Point)都会返回-1。我第一次测试它时,它工作得很好,而现在它神奇地不工作了

我有一个picturebox控件,在其中加载50x160 BMP图像,使用以下方法:

Picture1.Picture = LoadPicture(App.Path & "\test.bmp")
加载图片后,我希望获得特定像素的颜色:

GetPixel(Picture1.hDC, 0, 0)
Picture1.Point(0, 0)
我尝试了8000像素(显然是使用循环),每次函数调用(
GetPixel
Point
)都会返回
-1
。我第一次测试它时,它工作得很好,而现在它神奇地不工作了


有什么想法吗?

你确定图片已经满了吗

请查看以下项目:

'1 form with
'  1 picturebox: name=Picxture1
Option Explicit

Private Sub Form_Load()
  Picture1.Picture = LoadPicture("c:\temp\thieu.jpg")
  Caption = CStr(Picture1.Point(0, 0))
End Sub

Private Sub Form_Resize()
  Picture1.Move 0, 0, ScaleWidth, ScaleHeight
End Sub

Private Sub Picture1_Click()
  Caption = CStr(Picture1.Point(0, 0))
End Sub

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  Caption = CStr(Picture1.Point(X, Y))
End Sub
当窗体加载时,它将加载图片,并在标题中直接显示0,0的颜色。。这是-1,因为图片尚未加载

当您按下图片上的鼠标按钮时,它将显示该坐标的颜色,当您松开按钮(并完成单击)时,它将显示坐标0,0的颜色