开发界
首页 移动开发 在线交易 IT笔记 网络技术 操作系统 企业架构 数据库 考试认证 IT培训 开源软件 数据存储 行业资讯
大家都在看:java   开发   C#   oracle   mysql   android   web开发   学习   sqlserver   linux   asp   php   ajax   javascript   css   html
Delphi 模拟网站验证码
2012-09-08 10:34:55 来源:开发界 作者:admin 栏目:Delphi 责任编辑:admin
[导读]Delphi 模拟网站验证码
  1. function TfrmLabelPages.PwdImg(img: Timage): string;  
  2. var  
  3.   I,j,k:   Integer;  
  4.   vPoint:   TPoint;  
  5.   vLeft:   Integer;  
  6.   arrStr:array [1..36]of string ;  
  7.   strResult: string;  
  8. begin  
  9.   strResult := '';  
  10.   arrStr[1] := '0';  arrStr[2]:='1';  arrStr[3]:='2';  arrStr[4]:='3';  
  11.   arrStr[5] := '4';  arrStr[6]:='5';  arrStr[7]:='6';  arrStr[8]:='7';  
  12.   arrStr[9] := '8';  arrStr[10]:='9'; arrStr[11]:='A'; arrStr[12]:='B';  
  13.   arrStr[13] := 'C'; arrStr[14]:='D'; arrStr[15]:='E'; arrStr[16]:='F';  
  14.   arrStr[17] := 'G'; arrStr[18]:='H'; arrStr[19]:='I'; arrStr[20]:='J';  
  15.   arrStr[21] := 'K'; arrStr[22]:='L'; arrStr[23]:='M'; arrStr[24]:='N';  
  16.   arrStr[25] := 'O'; arrStr[26]:='P'; arrStr[27]:='Q'; arrStr[28]:='R';  
  17.   arrStr[29] := 'S'; arrStr[30]:='T'; arrStr[31]:='U'; arrStr[32]:='V';  
  18.   arrStr[33] := 'W'; arrStr[34]:='X'; arrStr[35]:='Y'; arrStr[36]:='Z';  
  19.   For j:=1 to 4  do  
  20.   begin  
  21.     Randomize;  
  22.     k := strtoint(Format('%.1d',[Random(36)]));  
  23.     strResult := strResult + trim(arrStr[k])  
  24.   end;  
  25.   vLeft := 10;  
  26.   img.picture := nil;  
  27.   for I := 1 to Length(strResult) do  
  28.   begin  
  29.     with Img do  
  30.     begin  
  31.       Canvas.Font.Size := Random(10)+ 9;  
  32.       Canvas.Font.Color := RGB(Random(256and $C0,  
  33.       Random(256and $C0, Random(256and $C0);  
  34.       if Random(2)=1 then  
  35.         Canvas.Font.Style := [fsBold]  
  36.       else Canvas.Font.Style := [];  
  37.       begin  
  38.         Canvas.Font.Name := Screen.Fonts[10];  
  39.         vPoint.X := Random(4)+ vLeft;  
  40.         vPoint.Y := Random(5);  
  41.         Canvas.TextOut(vPoint.X, vPoint.Y,strResult[I]);  
  42.         vLeft := vPoint.X + Canvas.TextWidth(strResult[I]);  
  43.       end;  
  44.     end;  
  45.   end;  
  46. end;  
标签:delphi 验证码
版权所有:转载请注明出处!
分享到:
上一篇没有了 下一篇delphi中apllication的processmes..
您可能还喜欢
今日最新资讯 最新推荐信息
考试认证 更多
开发技术 更多
移动开发 更多

关于开发界 | 合作伙伴 | 联系我们 | 友情链接 | 版权声明 | 网站制作 | 网站地图 | 加入收藏 | 设为首页

Copyright@2012-2016 开发界 京ICP备12027873号