Форум программистов, компьютерный форум CyberForum.ru

Получить снимок клиентской области окна и цвет пикселя - C++

Восстановить пароль Регистрация
 
sau
 Аватар для sau
1433 / 1269 / 96
Регистрация: 22.07.2011
Сообщений: 4,449
Завершенные тесты: 1
08.02.2012, 13:47     Получить снимок клиентской области окна и цвет пикселя #1
Всем привет, не шибко знаю С++, но есть две задачи
1. Нужно получить снимок клиентской области окна, притом возможно не активного или перекрытого другими окнами.
2. Нужно получить цвет точки в заданных координатах на полученном снимке.
Есть кое какие наброски на c#, но нужен аналог на С++

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 public static Bitmap GetWindowBMP(IntPtr hwnd, int X, int Y, int W, int H)
        {
            IntPtr srcHDC = user32.GetDC(hwnd);
            IntPtr hDC = gdi32.CreateCompatibleDC(srcHDC);
            IntPtr hBitmap = gdi32.CreateCompatibleBitmap(srcHDC, W, H);
            gdi32.SelectObject(hDC, hBitmap);
            bool Result = gdi32.BitBlt(hDC, 0, 0, W, H, srcHDC, X, Y, TernaryRasterOperations.SRCCOPY);
            Bitmap bmp = Bitmap.FromHbitmap(hBitmap);
            gdi32.DeleteObject(hBitmap);
            gdi32.DeleteDC(hDC);
            gdi32.DeleteDC(srcHDC);
            return bmp;
        }
 
 //Ну а цвет точки на шарпе это как bmp.GetPixel(X,Y), на WinApi нужно как то через полученный дескриптор.
Добавлено через 16 часов 40 минут
Ок, упростим вопрос, как имея дескриптор , получить цвет точки в заданных координатах ? , я так полагаю есть же какой то аналог GetPixel в WinAPI или библиотеках C++ ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2012, 13:47     Получить снимок клиентской области окна и цвет пикселя
Посмотрите здесь:

C++ Как изменить шрифт на кнопке в клиентской области?
Получить цвет фона экрана консольного окна (можно и методами WinAPI) C++
Функция, которая возвращает цвет пикселя в точке с координатами х, у C++
C++ Цвет пикселя под курсором
C++ Написать программу, которая будет определять цвет пикселя под курсором и выводить на экран этот цвет
Как узнать цвет пикселя изображения? C++
Получить цвет пикселя в RGB C++
Узнать цвет пикселя по координатам x y в картинке .png C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Евгений М.
1033 / 974 / 53
Регистрация: 28.02.2010
Сообщений: 2,817
Завершенные тесты: 2
08.02.2012, 14:02     Получить снимок клиентской области окна и цвет пикселя #2
Цитата Сообщение от sau Посмотреть сообщение
есть же какой то аналог GetPixel в WinAPI
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

hDC берете отсюда: http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
Yandex
Объявления
08.02.2012, 14:02     Получить снимок клиентской области окна и цвет пикселя
Ответ Создать тему
Опции темы

Текущее время: 17:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru