Hej Bjarke.
Som Uffe er inde på , skal du bruge TCanvas.Pixels[X,Y]. For at få adgang
til pixel-data uden for dit eget program skal der "broderes" lidt.
Se nedenstående eks. som er ok på win98.Bruger du NT er det nok lidt mere
tricky da der her anvendes flere desktops (f.eks til screensaveren).
Men.. eksperimenter med det og se hvad der sker.
Yngve
function GetFullScreenPixel(X, Y: Integer): Tcolor;
var
ScreenDC: HDC;
ScreenCanvas: TCanvas;
begin
ScreenDC := GetDC(0);
ScreenCanvas := TCanvas.Create;
ScreenCanvas.Handle := ScreenDC;
result := ScreenCanvas.Pixels[X,Y];
ScreenCanvas.Free;
ReleaseDC(0, ScreenDC);
end;
"Bjarke Freund-Hansen" <rknews@impsoft.dk> skrev i en meddelelse
news:prclut4pr8sntgqh5bpn6fkokehrtlf75t@4ax.com...
> On Thu, 8 Nov 2001 16:21:43 +0100, "Uffe Kousgaard"
> <uffe@routeware.dk> wrote:
>
> >se TCanvas.Pixels[X,Y]
>
> Findes der en canvas for hele skærmen (eller for et sepcefikt
> program)? Mit problem er at jeg skal tjekke et bestemt areal af
> skærmen (eller af et program) for en farve, hvert X'te sekund. Hvis
> der er andre løsninger på det, ville det også være iorden.