Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.01.2009, 19:40   #1
Василий
Пользователь
 
Регистрация: 26.10.2007
Сообщений: 34
По умолчанию

цель - схватить цвет пикселя (допустим под мышью) но даже тогда когда программа находится "снизу" других окон или свернута

PrintWindow для свернутой программы не работает...

Последний раз редактировалось Василий; 16.01.2009 в 20:59.
Василий вне форума Ответить с цитированием
Старый 22.01.2009, 22:58   #2
Vemer
 
Регистрация: 22.01.2009
Сообщений: 8
Лампочка

Получить DC через Handle и потом GetPixel или BitBLT?
Vemer вне форума Ответить с цитированием
Старый 23.01.2009, 00:17   #3
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Мне вот просто из интереса, вообще по логике как вы себе представляите связь между вашими же словами:
Цитата:
(допустим под мышью)
иииии
Цитата:
или свернута
Интересно просто, как вы мышью найдете окно которое скрыто ? И так, PrintWindow - работает, второе если нужен overlay или поверхность окна когда его не скрыто, XP - тут не справится, нужна ось или виста или выше... Там уже другая обстановка с подобными делами, сам все еще на Xp, пока не могу сказать что именно надо знать в Vista (etc.) чтобы такое осуществить.
BOBAH13 вне форума Ответить с цитированием
Старый 24.01.2009, 09:02   #4
Василий
Пользователь
 
Регистрация: 26.10.2007
Сообщений: 34
По умолчанию

2 BOBAH13 Координаты мыши можно взть всегда!
-------------------
Свернутое окно - не возможно сосчитать
-------------------
GetDC НЕ КАТИТ для окон "позади" других (DC только отображаемая на экране)
-------------------
Мне дали такой код: (обещали что получиться, в нем есть логика, но почему-то результат с любой программой - белый прямоугольник)
есть в нем ошибки???

Код:
GetWindowRect(HWindow, ProgRect);
  with TBitmap.create do
  Try
    pixelformat:=pf24bit;
    width:=ProgRect.right-ProgRect.left;
    Height:=ProgRect.Bottom-ProgRect.Top;
    SendMessage(Hwindow, WM_PRINT, Canvas.Handle,0);
    SaveTofile('c:\1.bmp');
  Finally
    Free;
  end;
Василий вне форума Ответить с цитированием
Старый 24.01.2009, 09:29   #5
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

Василий, посмотри вот эту тему http://programmersforum.ru/showthread.php?t=14666
rpy3uH вне форума Ответить с цитированием
Старый 24.01.2009, 16:24   #6
Василий
Пользователь
 
Регистрация: 26.10.2007
Сообщений: 34
По умолчанию

2 rpy3uH
я пробую тот пример!
в результате черный экран... =(
поэтому пытаюсь использовать WM_PRINT. но у меня не получается даже там где PrintWindow работает. что делать?
Василий вне форума Ответить с цитированием
Старый 25.01.2009, 15:54   #7
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

сообщение WM_PRINT и функция PrintWindow это одно и тоже
rpy3uH вне форума Ответить с цитированием
Старый 25.01.2009, 22:29   #8
Василий
Пользователь
 
Регистрация: 26.10.2007
Сообщений: 34
По умолчанию

жалко... значит проблему не решить
Василий вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Два вопроса: Цвет пикселя и управление курсором MaslovArt Win Api 6 22.06.2012 20:34
Быстро получить цвет пикселя... prizrak1390 Мультимедиа в Delphi 4 09.01.2008 20:28
«Окно+символ». Создать класс, представляющий окно в текстовом режиме. RustreX Паскаль, Turbo Pascal, PascalABC.NET 1 11.11.2007 19:28
Определение цвета пикселя Artem Общие вопросы Delphi 8 13.07.2007 14:33
Как узнать когда браузер скачивает, а когда нет? iPod Работа с сетью в Delphi 1 07.05.2007 15:16