思路求教:如何取得屏幕上任意一点的颜色? 有源码示例更好.(100分)

  • 主题发起人 主题发起人 Lera
  • 开始时间 开始时间
L

Lera

Unregistered / Unconfirmed
GUEST, unregistred user!
近几天看到一个小软件,可以取得屏幕上任意一点的颜色,不解其中思路.
请有这方面经验的指点实现思路. 当然不能仅限于程序自己的范围内取得颜色,
要可以取得屏幕上任何一点即可.
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=193861
 
使用 TScrean 类。
 
主要代码如下:
procedure TForm1.Timer1Timer(Sender: TObject);
var
; p: TPoint;
; ClD: DWOrd;
; r, g, b: string;
; MDC: HDC;
begin
; MDC := GetDC(0);
; GetCursorPos(p);
; clD := GetPixel(MDC, p.x, p.y);
; [red]r[/red] := IntTostr(GetRValue(clD));
; [green]g[/green] := IntTostr(GetGValue(clD));
; [blue]b[/blue] := IntTostr(GetBValue(clD));
end;
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
606
import
I
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部