VC++/MFC如何提取屏幕上每一点的RGB值并判断?

假如想判断屏幕上某点是否是纯白色,可这点是动态变化的,也就是说每次都不在同一坐标点上,GetPixel函数只能判定一点坐标RGB值。自己假象了下也试了下,设了个横坐标变量... 假如想判断屏幕上某点是否是纯白色,可这点是动态变化的,也就是说每次都不在同一坐标点上,GetPixel函数只能判定一点坐标RGB值。 自己假象了下也试了下,设了个横坐标变量X/纵坐标Y 自加后然后循环,最后判断if(hDC.GetPixel(x,y)==0x00FFFFFF),然后是想干的事。但程序运行后没反应- - 具体该怎么实现达到扫描整个屏幕,并立即找到自己所要找同样的RGB值的像素点? 展开
 我来答
星国千粒咬7775
2014-06-18 · 超过71用户采纳过TA的回答
知道答主
回答量:143
采纳率:63%
帮助的人:61万
展开全部
int nWidth=GetSystemMetrics(SM_CXSCREEN); int nHeight=GetSystemMetrics(SM_CYSCREEN); for(int i=0;i<nWidth;i++) { for(int j=0;j<nHeight;j++) { HDC hDC = ::GetDC(NULL); //获取屏幕DC //2、 获取当前鼠标位置像素值 CPoint pt; pt.x=nWidth; pt.y=nHeight; COLORREF clr = ::GetPixel(hDC, pt.x, pt.y); if() //你要做的判断 { } } }
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式