Показать сообщение отдельно
  #2  
Старый 14.10.2011, 22:33
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Цитата:
Сообщение от unity
можно ли как вариант делать скриншот и из него узнавать цвет?
(и как это сделать, насколько затратная эта операция в плане загрузки ресурсов компа)
Ничего сложного и затратного. Контекст вы уже получили, теперь создайте bitmap с размерами экрана, создайте совместимый контекст от экранного выберите bitmap в полученный ранее контекст и функцией BitBlt скопируйте.
Код:
  DC := GetDC(0);
  MemDC := CreateCompatibleDC(DC);
  MemBmp := CreateCompatibleBitmap(DC, Width, Height); // размеры экрана
  SelectObject(MemDC, MemBmp);
  BitBlt(MemDC, 0, 0, Width, Height, DC, 0, 0, SRCCOPY);
ну и не забыть, всё удалить, когда станет не нужно.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием