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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sau
1549 / 1384 / 118
Регистрация: 22.07.2011
Сообщений: 5,126
Завершенные тесты: 1
#1

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

08.02.2012, 13:47. Просмотров 995. Ответов 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++ ?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2012, 13:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Получить снимок клиентской области окна и цвет пикселя (C++):

Получить цвет пикселя в RGB - C++
Здравствуйте, как можно получить цвет пикселя в RGB ? Желательно с использование библиотеки png++

Получить цвет каждого пикселя изображения, разбив на уровни RGB - C++
Нужно получить цвет каждого пикселя изображения, разбив на уровни RGB. Как реализовать подобное?

Написать программу, которая будет определять цвет пикселя под курсором и выводить на экран этот цвет - C++
Хочу написать программу, кот. будет определять цвет пикселя под курсором и выводить на экран этот цвет словом или кодом или как лучше?...

Получить цвет фона экрана консольного окна (можно и методами WinAPI) - C++
Привет. Как получить цвет (фона экрана) консольного окна? Можно и методами WinAPI. С меня печенька :)

Как изменить шрифт на кнопке в клиентской области? - C++
Как для кнопки (класс CButton), выведенной в клиентской области, задать нужный мне шрифт? Я постепаю следующим образом: Файл...

Цвет пикселя под курсором - C++
Как узнать цвет пикселя экрана на координатах у=100 x=100 без скриншота. Если можно простой пример.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Евгений М.
1035 / 976 / 54
Регистрация: 28.02.2010
Сообщений: 2,829
Завершенные тесты: 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
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2012, 14:02
Привет! Вот еще темы с ответами:

Как узнать цвет пикселя изображения? - C++
Что нужно использовать, чтобы узнать цвет конкретного(зная его координаты) пикселя изображения?

Узнать цвет пикселя по координатам x y в картинке .png - C++
Есть картинка в формате .png как мне можно узнать цвет пикселя по координатам x y ? Желательно через библиотеку png++ или libPng

Значение первого бита в файле преобразовать в цвет пикселя - C++
Если создал не в том разделе, прошу перенести в нужный. Спасибо, простите! Я не знаю как задать правильно вопрос или что мне искать в...

Определить цвет пикселя в окне, которое закрыто другим - C++
Ситуация такая, есть окно я в нем делаю проверку на определенных координатах цвет пикселя. Но когда окно закрыть поверх другим окном то...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru