Jason2gs
2007-05-12 15:22:40
Well, I finally learned how to make forms today!
The first working form that I made wasn't useful. Just a button, and when you clicked it, it made the form close. This one isn't very useful either, but it does kinda look impressive :)
I'm gonna have a lot of fun with these forms…
The first working form that I made wasn't useful. Just a button, and when you clicked it, it made the form close. This one isn't very useful either, but it does kinda look impressive :)
program New;
var
frmDesign: TForm;
Edit1: TEdit;
Button1: TButton;
v: TVariantArray;
Text: String;
x: Integer;
procedure ButtonClick(Sender: TObject);
begin
Text := Edit1.Text;
frmDesign.ModalResult := mrOk;
ActivateClient;
end;
procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 250;
frmDesign.Top := 105;
frmDesign.Width := 225;
frmDesign.Height := 124;
frmDesign.Caption := 'Type Text';
frmDesign.Color := clBtnFace;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -11;
frmDesign.Font.Name := 'MS Sans Serif';
frmDesign.Font.Style := [];
frmDesign.Visible := False;
frmDesign.PixelsPerInch := 96;
Edit1 := TEdit.Create(frmDesign);
Edit1.Parent := frmDesign;
Edit1.Left := 52;
Edit1.Top := 16;
Edit1.Width := 121;
Edit1.Height := 21;
Edit1.TabOrder := 8;
Edit1.Text := 'Type Text Here';
Button1 := TButton.Create(frmDesign);
Button1.OnClick := @ButtonClick;
Button1.Parent := frmDesign;
Button1.Left := 75;
Button1.Top := 49;
Button1.Width := 75;
Button1.Height := 25;
Button1.Caption := 'Go!';
Button1.TabOrder := 9;
end;
procedure SafeInitForm;
begin
SetArrayLength(v, 0);
ThreadSafeCall('InitForm', v);
end;
procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;
procedure SafeShowFormModal;
begin
SetArrayLength(v, 0);
ThreadSafeCall('ShowFormModal', v);
end;
procedure AutoType;
begin
for x := 1 to Length(Text) do
begin
SendKeys(Text[x]);
Wait(100 + Random(50));
end;
KeyDown(13);
Wait(Random(50));
KeyUp(13);
end;
begin
SafeInitForm;
SafeShowformModal;
FreeForm(frmDesign);
repeat
AutoType;
Wait(1500 + Random(1000));
until(false);
end.
I'm gonna have a lot of fun with these forms…