Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.12;
Скачать: CL | DM;

Вниз

Как узнать цвет пиксела на экране в определенных координатах?   Найти похожие ветки 

 
ViRUS_1   (2003-01-12 04:51) [0]

Есть x, y (координаты на экране). Нужно узнать какого цвета этот пиксел. Этот пиксел может быть за пределами окна.


 
Rouse_ ©   (2003-01-12 07:32) [1]

Изображение.Canvas.Pixels[x,y];

Желаю успехов


 
Mihey   (2003-01-12 17:25) [2]

Нужно использовать API, конкретно - получить контекст экрана:

VAR ScreenDC: hDC;
BEGIN
ScreenDC := GetDC(0); {получить контекст экрана}
// Тут делаем что-нить
ReleaseDC(0,ScreenDC); {освободить контекст}
END;

А далее функции API:

function GetPixel(DC: HDC; X, Y: Integer): Longint;

Она возвращает цвет в RGB, но что-то не понимаю, как с ним потом работать. Если надо проще, то копируй экран в изображение и работай далее с ним как с канвой. Если нужен пример копирования, то можешь сообщить мне на мыло.


 
vidiv ©   (2003-01-13 09:38) [3]

function GetScreenPixel(x,y:integer):integer; {не TCOLOR}
var dc:hdc;
begin
dc := GetDC(0);
Result := GetPixel(dc,x,y);
ReleaseDC(0);
end;


 
vidiv ©   (2003-01-13 09:39) [4]

function GetScreenPixel(x,y:integer):TColor;
var dc:hdc;
begin
dc := GetDC(0);
result := GetPixel(dc,x,y);
ReleaseDC(0);
end;

Возможно цвет будет нивертирован...


 
Zakus   (2003-01-13 16:26) [5]

Можно узнать цвет пикселя в RGB (красный, зелёный, синий).
Для этого есть методы GETRVALUE(canvas.pixel[x,y])для красного
GETGVALUE(canvas.pixel[x,y])для зелёного
GETBVALUE(canvas.pixel[x,y])для синего


 
Zakus   (2003-01-13 16:31) [6]

Если надо присвоить пикселю цвет в RGB -
canvas.pixel[x,y] := RGB(r,g,b)
R,G,B - целые от 0 до 255.


 
ViRUS_1   (2003-02-01 10:16) [7]

Всем большое спасибо



Страницы: 1 вся ветка

Текущий архив: 2003.05.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
1-34390
AlexGof
2003-04-30 09:43
2003.05.12
Как в Hint сделать перенос строки


1-34499
Матка
2003-04-23 05:40
2003.05.12
Application.ExeName и ParamStr(0)


3-34345
Rise
2003-04-22 13:03
2003.05.12
DBGrid и Fileds?


4-34651
demonyator
2003-03-10 00:40
2003.05.12
Подскажите как определить имя exe шника имея Handle


4-34648
Вадим
2003-03-10 13:24
2003.05.12
немодальное окно без помощи VCL в dll