我想在屏幕上像素指定颜色的查找,或者在屏幕上指定的范围内进行指定颜色的查找,比如说我想找FF红色这个颜色,谢谢指教!!!

解决方案 »

  1.   

    先用getdc获取桌面的dc,然后用bitblt弄到一个picturebox里面,然后逐个象素分析。
    getdc和bitblt都是api。
    别问我要代码。
      

  2.   

    先用getdc获取桌面DC,然后用GetPixel获取指定位置的颜色
      

  3.   

    get hdc后用getpixel遍历?是不是也太慢了点,我现在就是感觉慢才想看看有没有其它好的办法 jurna(鸟人) 能说的再详细点嘛? sworddx(.:RNPA:. Hillinsilence;剑宇潇湘·秋叶原 Reloaded) 你的“逐个象素分析”是什么意思,不好意思,我只是可以用VB,API自然也可以对付着用,源码倒是不用的,能说清楚点嘛?
      

  4.   

    逐个象素分析,就是一个象素一个象素的来,拿出一个象素,获取它的颜色代码,然后跟你要查找的颜色的代码比较,如果相同那就是这个颜色,否则不是,等等等等。
    如果你嫌get hdc后用getpixel遍历太慢,这个一样的慢。
      

  5.   

    GetDC 取桌面hDC
    GetCurrentObject 取Bmp对象句柄
    GetObjectA 取Bmp信息
    GetBitmapBits 取DDB位图数据数组
    根据色深确定数据比对方式,遍历数组查找指定颜色
      

  6.   

    感谢 jurna(鸟人) 给我的这个思路,我原来从没有想过这方面的东西,毕竟不是经常搞这个的,呵呵,也谢谢各位朋友了,我在大家的启发下已经有了新的思路,再次表示感谢!