Une solution, qui m'a été transmise par Michel Pfeiffer, et réalisée par
Gevorg Ter-Saakov : le composant Gif89, qui s'insère sur
un formulaire comme n'importe quel objet OLE, et qui sert de container pour
images Gif.
Consultez la documentation livrée avec le composant Gif89
pour plus de détails.
Installer le composant Gif89
- Gif89.dll (le fichier gérant les Gif animés),
- Gif89.rtf (la documentation originale de Gif89.dll, en anglais),
- Gif89fr.rtf (la documentation traduite - librement - en français par votre serviteur),
- install.bat (le fichier d'installation)
- uninst.bat (le fichier de désinstallation)
Le programme d'installation ne fait qu'inscrire la DLL dans la base de registre de Windows.
La commande est \windows\system\regsvr32 \windows\system\gif89.dll
(à aménager si votre installation est différente).
Désinstaller le composant Gif89
En bas de la liste des propriétés, vous trouverez les propriétés spécifiques au composant Gif89, qui sont détaillées ci-dessous :
AutoSize | Si cette propriété est définie à Oui et que vous chargez une nouvelle image, le composant se redimensionnera automatiquement en fonction de la taille de l’image. Ceci ne marche pas dans FoxPro 5.0, donc si vous ne voulez pas un comportement bizarre, réglez toujours cette propriété sur Non dans FoxPro. Mais vous pouvez toujours essayer de la définir à Oui pour voir ce qui se produit. AutoSize fonctionne bien avec VB, Access. |
AutoStart | Si cette propriété est réglée à Oui, le composant commence automatiquement à "jouer" le fichier (c'est-à-dire animer l’image) lorsque le formulaire est chargé. |
FileName | Le nom du fichier Gif. |
Embed | Si
cette propriété est réglée sur Non, vous devez distribuer le fichier Gif
avec votre application; si elle vaut Oui, le fichier Gif est intégré dans
votre .EXE et il n’est pas nécessaire de le distribuer séparément.
Si vous définissez la propriété Embed à Oui, le composant ignorera la propriété FileName. Ainsi, si en mode Création vous réglez Embed à Oui puis décidez de changer l’image, vous devez définir la propriété Embed à Non, puis changer le nom du fichier (FileName), et enfin redéfinir Embed à Oui à nouveau. |
Speed | Le délai entre deux images. 100 équivaut à un délai de 1 seconde. Si le fichier Gif lui-même comporte un réglage de vitesse, le composant ignorera cette propriété. |
Glass | Si
la propriété Glass est réglée à Non, le rectangle qui contient le
composant est rempli de la couleur de fond du container (BackColor en VB
5.0). Si vous avez une image sous le composant (en VB 5.0 il est possible de
définir la propriété Picture du formulaire), vous verrez un rectangle
gris et l’image Gif sera animée à l’intérieur. Mais si vous souhaitez
que le Gif soit animé par-dessus votre image, réglez la propriété Glass
sur Oui.
Attention : quelquefois, si vous ne définissez pas la propriété ClipControls à Non, vous pouvez obtenir un trou dans votre formulaire, parce que le formulaire ne s’est pas redessiné sous le composant. Si vous placez mon composant sur un composant PictureBox, vous devez changer la propriété ClipControls de l’objet PictureBox. |
Note : Pour placer le composant Gif89 sur un UserForm (Word, Excel ou autre), il faut au préalable ajouter ce composant dans la "boîte à outils", via le menu Outils / Contrôles supplémentaires / Gif89 Class.