Delphi如何实现屏幕区域里找色?
时间:2007-08-16
来源:互联网
我的目的是:用查找颜色,在游戏里选择怪物.
作者: csppgame 发布时间: 2007-08-16
作者: hsmserver 发布时间: 2007-08-16
下面的我试了下.RGB全部是255
procedure TForm1.Button1Click(Sender: TObject);
var
point:Tpoint;
MyhDC : HDC;
scrx1,scry1,temp,rr,gg,bb:Integer;
begin
GetCursorPos(point);
scrx1:=point.x;
scry1:=point.y;
//获取到那个点的屏幕坐标,然后
temp := GetPixel(MyhDC,scrx1, scry1);
rr := GetRValue(temp);
gg := GetGValue(temp);
bb := GetBValue(temp);
showmessage(inttostr(rr)+inttostr(gg)+inttostr(bb));
end;
end.
作者: csppgame 发布时间: 2007-08-16
pos: TPoint;
Handle: HWND;
ScreenDC: HDC;
Buf: array[0..1024] of Char;
ScreenColor: COLORREF;
begin
GetCursorPos(Pos);
Handle := WindowFromPoint(Pos);
edit1.Text := IntToStr(Handle);
GetClassName(Handle, Buf, 1024);
edit2.Text := Buf;
SendMessage(Handle, WM_GETTEXT, 33, Integer(@Buf));
edit3.Text := Buf;
ScreenDC := GetDC(0);
ScreenColor := GetPixel(ScreenDC, Pos.X, Pos.Y);
//Shape.Brush.Color := TColor(ScreenColor);
edit1.Text := '红: ' + IntToStr(GetRValue(ScreenColor)) +
' 绿: ' + IntToStr(GetGValue(ScreenColor)) + ' 蓝: ' +
IntToStr(GetBValue(ScreenColor));
ReleaseDC(0, ScreenDC);
edit2.Text := Format('Delphi中颜色值:$00%2.2x%2.2x%2.2x', [GetBValue(ScreenColor),
GetGValue(ScreenColor), GetRValue(ScreenColor)]);
作者: brightyang 发布时间: 2007-08-16
作者: brightyang 发布时间: 2007-08-16
作者: csppgame 发布时间: 2007-08-16
自已按着改不就行了》》》》
把一个范围看着是一个矩形,里面的点用循环取出颜色,然后把在这点模拟按键就行了啥
作者: brightyang 发布时间: 2007-08-17
用scanline吧。
作者: kingnew 发布时间: 2007-08-28
还是选则连续的像素比较麻烦些
作者: leexuany 发布时间: 2007-08-28
作者: meiZiNick 发布时间: 2008-05-01
LZ我给你发个在当前屏幕指定区域查找图吧,不过这在屏幕外就不能用了,
1 VB里引用 那个QMDispatch.dll
2 在系统中用regsvr32命令注册 DLL
那个HELPER.DLL和WinIo.dll放在同一个地方,否则注册不了成功
Private Declare Function FindPic Lib "QMDispatch" () As Long
dim a as long
Public QMDispatchObj As Object
在FORM中引用
Set QMDispatchObj = CreateObject("QMDispatch.QMFunction")
pos=QMDispatchObj.FindPic (0, 0, 1280, 1024, "E:/工.bmp", 0.9 )
msgbox int(pos/8192)'X左边
msgbox pos MOD 8192 'Y左边
作者: abc40 发布时间: 2008-09-19
作者: book_longker 发布时间: 2011-09-22
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28