Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/47: Рейтинг темы: голосов - 47, средняя оценка - 4.96
 Аватар для Nalik
176 / 124 / 49
Регистрация: 30.11.2012
Сообщений: 1,330

Определение пикселя цвета в координатах

10.04.2014, 12:20. Показов 8939. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите пожалуйста, как можно определить цвет пикселя в указанных координатах на с++ в окне, которое находим по хендлу?
Использую Microsoft Visual C++ 2010 Express.

Т.е. что нить типа такого
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void main()
  {
      int c; 
          HWND Handle;
      Handle  = FindWindow(L"Edit", NULL); //блокнот
      
           c = опр_пикселя (300, 120); //300, 120 - это типа координаты
           if (c = белый цвет)
           {
                cout << "цвет в координатах белый";
           }
           else
           {
                cout <<"цвет не совпадает";
           }
           
      getch();
  }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.04.2014, 12:20
Ответы с готовыми решениями:

Выполнить определение цвета пикселя при вождении мышкой по компоненту TImage
В программе мне необходимо выполнять определение цвета пикселя при вождении мышкой по компоненту TImage. Подскажите пожалуйста как можно...

Поиск цвета пикселя в заданных координатах
Здравствуйте. Нужно в заданных координатах области монитора искать указанный цвет пикселя, и если он найдётся, то выполнить действие....

Определение цвета пикселя
в bitmap загружена картинка, нужно сделать черно-белое изображение из цветного. знаю про GetPixel, но как определить на какой цвет...

7
Модератор
Эксперт С++
 Аватар для zss
13772 / 10965 / 6491
Регистрация: 18.12.2011
Сообщений: 29,242
10.04.2014, 12:27
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void main()
  {
          HWND Handle;
          Handle  = FindWindow(L"Edit", NULL); //блокнот
           COLORREF  c = GetPixel (300, 120); //300, 120 - это типа координаты
           if (c ==RGB(255,255,255) )
           {
                cout << "цвет в координатах белый";
           }
           else
           {
                cout <<"цвет не совпадает";
           }
           
      getch();
  }
1
 Аватар для Nalik
176 / 124 / 49
Регистрация: 30.11.2012
Сообщений: 1,330
10.04.2014, 12:52  [ТС]
Спасибо!)
Ещё раз прошу прощения, у меня почему то пишет ошибку в координатах..
Миниатюры
Определение пикселя цвета в координатах  
0
Неэпический
 Аватар для Croessmah
18146 / 10730 / 2066
Регистрация: 27.09.2012
Сообщений: 27,029
Записей в блоге: 1
10.04.2014, 12:57
Потому что надо документацию смотреть: http://msdn.microsoft.com/en-u... 85%29.aspx

Добавлено через 31 секунду
zss, GetPixel еще принимает HDC первым параметром
1
Модератор
Эксперт С++
 Аватар для zss
13772 / 10965 / 6491
Регистрация: 18.12.2011
Сообщений: 29,242
10.04.2014, 13:45
Цитата Сообщение от Croessmah Посмотреть сообщение
GetPixel еще принимает HDC первым параметром
В документации попал на страницу от MFC и не обратил на это внимание.
0
 Аватар для Nalik
176 / 124 / 49
Регистрация: 30.11.2012
Сообщений: 1,330
10.04.2014, 16:36  [ТС]
Что-то я делаю не так, да?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void main()
{
    setlocale(LC_CTYPE, "Russian"); //Руссификатор
    HWND Handle;
    Handle  = FindWindow(L"Edit", NULL);
    
    COLORREF  c = GetPixel (HDC Handle, 300, 120); //300, 120 - это типа координат
    
    if (c ==RGB(255,255,255) )
    {
        cout << "Ok";
    }
    else 
    {
        cout << "Not";
    }
    getch();
  }
0
Модератор
Эксперт С++
 Аватар для zss
13772 / 10965 / 6491
Регистрация: 18.12.2011
Сообщений: 29,242
10.04.2014, 16:43
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void main()
{
    setlocale(LC_CTYPE, "Russian"); //Руссификатор
    HWND Handle;
    Handle  = FindWindow(L"Edit", NULL);
    
    HDC hdc=GetDC(Handle);
    COLORREF  c = GetPixel (hdc, 300, 120); //300, 120 - это типа координат
    ReleaseDC(Handle,hdc);
     
    if (c ==RGB(255,255,255) )
    {
        cout << "Ok";
    }
    else 
    {
        cout << "Not";
    }
    getch();
  }
1
 Аватар для Nalik
176 / 124 / 49
Регистрация: 30.11.2012
Сообщений: 1,330
10.04.2014, 17:12  [ТС]
zss, спасибо большое!!! Выручаешь прям!))
А можно тебя в вк добавить, чтобы мучать иногда?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.04.2014, 17:12
Помогаю со студенческими работами здесь

Определение цвета пикселя
Необходимо определить цвет пикселя в формате RGB. Возможно ли это сделать стандартными средствами или необходимы дополнительные библиотеки?...

Определение цвета пикселя, glReadPixel
Хочу наконец понять, есть ли способ получить цвет пикселя более быстрый чем glReadPixel? На Tegr'е 3 ОДНА эта операция выполняется 20мс.

OpenGL ES определение цвета пикселя
Подскажите пожалуйста, как можно средствами OpenGL ES определить цвет пикселя RGBA текстуры или экрана?

Определение цвета пикселя на экране
Ребят, сразу прошу не счесть за тупость. Я гуглил! Представим, у меня есть на экране область, цвет которой периодически меняется и может...

Определение цвета пикселя на форме
Здравствуйте, У меня есть шар который рисуется и может двигаться с помощью клавиатуры в разные стороны, мне нужно чтобы когда он попадал...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru