Les étapes suivantes illustrent la manière de créer un contrôleur Automation imprimant un document avec Microsoft Word.
Avant de commencer, créez un nouveau projet composé d'une fiche, d'un bouton et d'une boîte de dialogue Ouvrir (TOpenDialog). Ces contrôles constituent le contrôleur Automation.
Etape 1 : création d'un objet Variant pour Word Basic
Pour créer un objet Variant pour Word Basic,
Dans le gestionnaire d'événement OnClick du bouton du contrôleur Automation, ajoutez le code suivant :
uses ComObj;
procedure TForm1.Button1Click(Sender:TObject);
var
V: OleVariant;
begin
V := CreateOleObject('Word.Basic'); (* Crée l'objet Automation *)
V.Insert ('Delphi dit bonjour !'); (* Fait quelque chose *)
end;
Ce code affecte un objet Automation au variant V. Cet objet est un serveur Automation qui réside à l'intérieur de Word. La méthode Insert n'est ni une méthode ni une fonction Pascal Objet et elle ne fait pas non plus partie de l'API Windows. Insert est une méthode Word que vous pouvez appeler directement depuis l'application Delphi en utilisant l'Automation.
Remarquez qu'un seul paramètre est passé à la méthode Insert, alors qu'elle a d'autres paramètres. C'est parce que Word supporte le passage de paramètres facultatifs comme indiqué dans Exécution en arrière-plan d'un serveur Automation.
Etape 2 : utilisation de la méthode Variant pour imprimer le document
Pour utiliser la méthode Variant::Exec pour imprimer le document :
Dans le gestionnaire d'événements OnClick du bouton du contrôleur Automation, ajoutez le code suivant :
if OpenDialog1.Execute then
V.FilePrint(OpenDialog1.FileName);
Partager