本帖最后由 jackz007 于 2021-11-5 20:07 编辑
如果编译器是 gcc,编译时,加个 -mwindows 选项就可以了,就像这样:
如果编译器是 vc,代码中必须再添加 2 行代码:#include <stdio.h>
#include <windows.h>
#pragma comment(lib, "gdi32.lib") // API GetPixel() 的出处
#pragma comment(lib, "user32.lib") // API GetDC() 的出处
int main()
{
HDC hdc = GetDC(NULL);
COLORREF Windows_Hdc_RGB = GetPixel(hdc, 56,89); //获取指定DC上的像素点RGB值
//获取RGB,其可以使用:GetRValue,GetGvalue,GetBvalue函数代替
WORD r = (Windows_Hdc_RGB & 0x00FF0000) >> 16;
WORD g = (Windows_Hdc_RGB & 0x0000FF00) >> 8;
WORD b = Windows_Hdc_RGB & 0x000000FF;
printf("鼠标位置的颜色RGB值是:%d,%d,%d", r, g, b);
getchar();
}
然后照常编译就可以了。 |