Здравствуйте пользователи nookery.ru в этой статье я приведу пример кода. Который позволить вам использовать метод для определения по координатам цвет пикселя. Вам будет достаточно скопировать метод, ввести координаты пикселя, и использовать переменные r g b в своем приложении.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
[DllImport("user32.dll")] public static extern IntPtr GetDesktopWindow(); [DllImport("gdi32.dll")] public static extern uint GetPixel(IntPtr hDC, int nXPos, int nYPos); [DllImport("user32.dll")] public static extern IntPtr GetDC(IntPtr hwnd); [DllImport("user32.dll")] public static extern int ReleaseDC(IntPtr hwnd, IntPtr hDC); int r; int g; int b; public void getColor(int x, int y) { IntPtr hwnd = GetDesktopWindow(); IntPtr hDC = GetDC(hwnd);//Ссылка на окно, в котором будет выполнен поиск пикселя uint pixel = GetPixel(hDC, x, y); ReleaseDC(IntPtr.Zero, hDC); r = (byte)(pixel & 0x000000FF);//получим составляющие цвета g = (byte)((pixel & 0x0000FF00) >> 8); b = (byte)((pixel & 0x00FF0000) >> 16); } |