⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.pas

📁 一个小程序
💻 PAS
字号:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Buttons;

type
  TForm1 = class(TForm)
    Image1: TImage;
    Button2: TButton;
    Edit1: TEdit;
    procedure Button2Click(Sender: TObject);
    procedure Image1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure PwdImg(img:Timage);
  end;

var
  Form1: TForm1;
  pwdimgstr : string;

implementation

{$R *.dfm}
procedure TForm1.PwdImg(img:Timage);
var
  I,j,k:   Integer;
  vPoint:   TPoint;
  vLeft:   Integer;
  arrStr:array [1..36]of string ;
begin
  pwdimgstr:='';
  arrStr[1]:='0';  arrStr[2]:='1';  arrStr[3]:='2';  arrStr[4]:='3';
  arrStr[5]:='4';  arrStr[6]:='5';  arrStr[7]:='6';  arrStr[8]:='7';
  arrStr[9]:='8';  arrStr[10]:='9'; arrStr[11]:='A'; arrStr[12]:='B';
  arrStr[13]:='C'; arrStr[14]:='D'; arrStr[15]:='E'; arrStr[16]:='F';
  arrStr[17]:='G'; arrStr[18]:='H'; arrStr[19]:='I'; arrStr[20]:='J';
  arrStr[21]:='K'; arrStr[22]:='L'; arrStr[23]:='M'; arrStr[24]:='N';
  arrStr[25]:='O'; arrStr[26]:='P'; arrStr[27]:='Q'; arrStr[28]:='R';
  arrStr[29]:='S'; arrStr[30]:='T'; arrStr[31]:='U'; arrStr[32]:='V';
  arrStr[33]:='W'; arrStr[34]:='X'; arrStr[35]:='Y'; arrStr[36]:='Z';
  for j:=1 to 4  do
  begin
  Randomize;
  k:=strtoint(Format('%.1d',[Random(36)]));
  pwdimgstr:=pwdimgstr+trim(arrStr[k])
  end;
  vLeft:=10;
  img.picture:=nil;
  for I:= 1 to Length(pwdimgstr) do
  begin
  with Img do
  begin
    Canvas.Font.Size := Random(10)+ 9;
    Canvas.Font.Color := RGB(Random(256) and $C0,
    Random(256) and $C0,Random(256) and $C0);
      if Random(2)=1 then
        Canvas.Font.Style := [fsBold]
      else Canvas.Font.Style := [];
      begin
        Canvas.Font.Name := Screen.Fonts[10];
        vPoint.X := Random(4)+ vLeft;
        vPoint.Y := Random(5);
        Canvas.TextOut(vPoint.X,vPoint.Y,pwdimgstr[I]);
        vLeft := vPoint.X + Canvas.TextWidth(pwdimgstr[I]);
      end;
    end;
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin

  if trim(edit1.Text)<>trim(pwdimgstr) then
  begin
    showmessage('验证码不正确');
    PwdImg(image1);
  end
  else
    showmessage('正确');
end;

procedure TForm1.Image1Click(Sender: TObject);
begin
  PwdImg(image1);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  PwdImg(image1);
end;

end.







⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -