i programmed a little funny tool to view the pattern lock instead
of showing the numbers.
but i havent enugh time to complete it now..
but maybe some other programmers whant to implement this feature into there tools and make it more easy for there users.
so what it dose?
its just a very simple peace of code, it just convert the patternlock numbers into a viewable picture.
nothing special..
download here the tool: http://jau.cc/support/index.php?dir=...ern_Viewer.zip
here is delphi source (incl. paintshop psd for background): http://jau.cc/support/index.php?dir=...wer_SOURCE.zip
or here is all: Index of ./support/Android Pattern Lock Viewer/
Code:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, jpeg, ExtCtrls, StdCtrls, acPNG; type TForm1 = class(TForm) Image1: TImage; Edit1: TEdit; Label1: TLabel; Label2: TLabel; Timer1: TTimer; procedure Edit1KeyPress(Sender: TObject; var Key: Char); procedure Timer1Timer(Sender: TObject); private public end; var Form1: TForm1; implementation {$R *.dfm} procedure PaintFild(input : string); const HL : array [1..9] of integer = (30,91,153,30,91,153,30,91,153); VL : array [1..9] of integer = (122,122,122,183,183,183,244,244,244); var i : integer; begin form1.Image1.Refresh; form1.Canvas.Pen.Color := clGreen; form1.Canvas.Pen.Width := 18; form1.Canvas.Pen.Style := psSolid; while Pos(' ', input) > 0 do Delete(input,Pos(' ', input),1); form1.Canvas.MoveTo(HL[strtoint(input[1])], VL[strtoint(input[1])]); for i:= 1 to length(input) do begin form1.Canvas.LineTo(HL[strtoint(input[i])], VL[strtoint(input[i])]); form1.Canvas.MoveTo(HL[strtoint(input[i])], VL[strtoint(input[i])]); application.ProcessMessages; sleep(150); end; end; procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if not(Key in [#13,#9,#8,'0'..'9']) then Key:=#0; if key = #13 then PaintFild(form1.edit1.Text); end; procedure TForm1.Timer1Timer(Sender: TObject); var s: string; FmtStngs: TFormatSettings; begin GetLocaleFormatSettings( GetThreadLocale, FmtStngs ); FmtStngs.DateSeparator := #32; FmtStngs.ShortDateFormat := 'dd mmm yy'; FmtStngs.TimeSeparator := ':'; FmtStngs.LongTimeFormat := 'hh:nn'; s := TimeToStr(Now, FmtStngs ); form1.Label1.Caption:=s; s := DateToStr(Now, FmtStngs ); form1.Label2.Caption:=s; end; end.
if someone have a good idea how to paint lines in half transparent without other components, let me know..
No comments:
Post a Comment