IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Tutoriel : Un éditeur de texte à fonctions vocales qui utiise Microsofft Agent

2002

Par Benoit Vermersch - vermerschb@mailup.net

II- Fonctions Vocales

Composants nécessaires

Tout d'abord, il faut télécharger divers composants :

Composants 21(2300 ko) : Voix pour que votre agent puisse parler

Composants 3 (825 ko) : Bibliothèques

Composants 4 (392 ko) : Microsoft Agent, les composants globaux de Microsoft Agent 2.0

Claude (2400 ko) : c'est le personnage microsoft agent que nous utiliserons

Installation dans Delphi

Après avoir installé, les composants (certaines erreurs se déroulent pendant l'installation de certains composants, méthode : faites "Parcourir" puis "Ok")

Ensuite, Pour pouvoir utiliser les Microsoft Agents dans Delphi, vous devez importer le composant ActiveX

- Dans le menu Composants de Delphi, choisissez Importer un contrôle ActiveX et sélectionner dans la liste " Microsoft Agent Control 2.0"

- Cliquer sur Installer

Voilà vous êtes prêt à programmer notre petit personnage qui mettra un peu de tonus dans votre application

C'est parti pour le codage des petits agents

- Déposer un composant Agent (ActiveX) sur votre fiche. Ne toucher pas à ses propriétés

- Dans l'emplacement "var" de votre unit 1, placer le code suivant sur la ligne après Form1:TForm;

Claude:IAgentCtlCharacterEX;//comme ça ira plus vite pour parler de notre agent

- Ensuite dans l'évènement Oncreate de Form1(sélectionner dans l'inspecteur d'objet), placer ces lignes à la suite des autres :

Agent1.Connected:=True;//On "branche" l'agentà notre appli
Agent1.Characters.Load('Claude', 'Claude.acs');//on charge le perso Claude
Claude:=IAgentCtlCharacterEX(Agent1.Characters.Character('Claude'));//on désigne Claude comme agent de l'application
Claude.Show(False);
//on affiche Claude

- Enregistrer puis tester votre application. Vous pouvez maintenant voir Claude s'afficher sur votre écran.

Par défaut Claude est placé en haut à gauche de l'écran. Cette place est génante nous allons lui demander de se déplacer en bas à droite de la richedit. Pour cela :

- Insérer le code suivant dans l'évènement Oncreate de form1 à la suite des autres lignes :

Claude.MoveTo(RichEdit1.Left + RichEdit1.Left,RichEdit1.Width,RichEdit1.Top + RichEdit1.Height,1000);
//Structure de base : Claude.MoveTo(pointd'abscisse,pointd'ordonnée,vitesse)

- Nous allons maintenant demander à claude de saluer l'utilisateur. Donc insérer le code suivant toujours dans l'évènenement Oncreate :

Claude.Play('Wave');//structure de base : Claude.Play('Nom de l'animation')

La liste des actions standards (communes à presques que tous les agents) est disponible ) la page de mon site (profitez-en pour mettre un mot dans le livre d'or) : Actions

Maintenant, le grand moment attendu, nous allons demander à l'agent de réciter le texte contenu dans la RichEdit :

- Placer un Bouton dans votre barre d'outil et régler son caption à "Lire le texte" (agrandir un peu votre fiche)

- Ensuite, double-cliquer dessus pour déclarer sa procédure Onclick (instruction que le programme effectue quand on clique sur le bouton). Insérer le code suivant (ouf c'est la dernière fois que je le dis) :

var i:integer;
begin
for i:=0 to RichEdit1.Lines.Count-1 do//sélectionne toutes les lignes de la richedit
Claude.speak(RichEdit1.Lines[i],'')

end;

 

- Enregsitrer et exécuter votre programme.

Voilà la source su programme que vous devez obtenir : Programme

Voilà c'est fini. reste plus qu'à dire que j'ai crée un site sur les agents que vous pouvez visiter : Phidelagents

Quant à moi, je suis en seconde avec option européenne et Mpi au lycée Assomption de Rennes. Vous pouvez me contacter par email : vermerschb@mailup.net Bon développement à tous et vive Delphi !!