![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Всем привет. Я получаю цвет пикселей с экрана таким путем
Код:
function CL(X, Y: integer): string; var DC: HDC; ColorValue: Cardinal; begin DC := GetDC( 0 ); // Узнаю цвет пикселя в полученных координатах ColorValue := GetPixel( DC,X, Y ); // Показываю полученный цвет ReleaseDC( 0, DC ); result:=inttohex(colorvalue,2); end; иногда когда я получаю цвет с одного окошка он мне выдаёт цвет того окошка которое находится под ним. Мне сказали что это из за Layered Windows. http://msdn.microsoft.com/en-us/library/ms997507.aspx Вкратце - если такое окно перекрыто другим, то у него можно взять пиксели и они будут такие, как будто перекрытия нет. Как мне получать цвет нужного мне окна ? Или как обойти Layered Windows Последний раз редактировалось Admin, 02.05.2011 в 19:40. |