Auditdesktop help

Не можете да дефинирате клас вътре в скрипта, но можете да използвате
външни класове, дефинирани в допълнителни модули или в приложението ви.

var
  f: TForm;
  b: TButton;

procedure ButtonClick(Sender: TButton); 
begin
  ShowMessage(Sender.Name);
  f.ModalResult := mrOk; 
end;

// няма нужда да се използват всички параметри в манипулаторите на събития 
// защото тук не се прави проверка на типа

procedure ButtonMouseMove(Sender: TButton); 
begin
  b.Caption := 'moved over'; 
end;

begin
  f := TForm.Create(nil);
  f.Caption := 'Test it!';
  f.BorderStyle := bsDialog;
  f.Position := poScreenCenter;
  b := TButton.Create(f);
  b.Name := 'Button1';
  b.Parent := f;
  b.SetBounds(10, 10, 75, 25);
  b.Caption := 'Test';
  b.OnClick := @ButtonClick; { same as b.OnClick := 'ButtonClick' }
  b.OnMouseMove := @ButtonMouseMove;
  f.ShowModal;
  f.Free; 
end.

Както виждате, няма разлика между кодовете PascalScript и
Delphi. Можете да достъпите всеки метод или свойство (просто,
индексирано или по подразбиране). Всички публикувани свойства на обекта
са достъпни от скрипта по подразбиране. Публичните свойства и методи
имат нужда от код за имплементация, затова можете да ги достъпите
частично (например, не можете да достъпите метода TForm.Print или
свойството TForm.Canvas защото те не са имплементирани).