Public Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Longe.g.
Debug.Print GetPixel(picture1.hDC,10,10)好了,拿分来!

解决方案 »

  1.   

    好.让我去试试,如果行,必定献上.但为什么还有picture1这个对象.我希望没有.可以吗?
    其中的x,y是不是象素宽高,hdc是?????翻书去看看
      

  2.   

      可是,可是,你要获得一个图像的信息,当然要装入内存咯。不见得直接打开文件分析吧?光 BMP 就好几种格式,还有 JPEG、GIF……
      我不知道你是否只处理 BMP,如果是,可以用 LoadImage() 和 GetDIBits() 较快活得指定像素的信息。可能会比 LoadPicture() 快。
      

  3.   

    不过我事先已经通过把图像读入内存了阿.
    Private Type typeLoadPic   '跟踪数组
        FilePath As String
        LoadDate As Date
        BmpWidth As Integer
        BmpHeight As Integer
        BmpPicture As StdPicture
    End Type先通过上面的定义.其次我把他们读到内存.应该有什么办法的.我只不过想更快速的从内存读取.
    我只处理bmp文件.而且我不想用point这个东西来获取象素(内存中图片的象素),因为用point一定要picture1对象.我并不想调入,当图片比较大的时候,就慢了.那么getdibits可以实现吗?
      

  4.   

    GetDIBit() 可以实现。你把 StdPicture 的 Handel 转为标准 Bitmap Handel。
      

  5.   

    Public Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
    中,x,y是逻辑坐标,是否可以把他们设置成ScoleMode=Pixel 再执行。因为我首先得到了像素的宽高。
      

  6.   

    GetPixel/SetPixel 问题在于,这两个api还是要有picturebox对象的。有了对象才有hdc。对不?
      

  7.   

    如何使用GetDIBit() ??说明。。