Une image en arrière-plan peut être incorporée dans un formulaire à l’aide de la propriété Picture. Cette propriété affiche l’image à ses dimensions d’origine. Si vous souhaitez que l’image occupe tout le côté client du formulaire ou toute sa largeur ou sa hauteur, utilisez la propriété PictureSizeMode. La propriété PictureAlignment place l’image dans la zone cliente du formulaire, par exemple, centrée ou contre les côtés spécifiés du formulaire.
Construisons un projet d’un formulaire dans laquelle une image est affichée en arrière-plan. Lorsque vous cliquez sur le formulaire, deux image se remplaceront alternativement.
Pour implémenter le projet, vous devez disposer de deux images. Dans ce cas, il s’agit de C: \ image1.jpg et C: \ image2.jpg. Alors, construisez un formulaire et, à l’aide de la fenêtre Propriétés, définissez ses valeurs de propriété comme indiqué dans le tableau suivant.
Tableau. Valeurs de propriété définies dans la fenêtre Propriétés
Objet | Propriété | Valeur |
Formulaire ou UserForm | Picture | Lien vers le fichier bitmap C:\image1.jpg |
PictureSizeMode | FmPictureSizeModeStretch | |
Caption | Arrière plans modifiables |
Double-cliquez sur le bouton gauche de la souris sur le formulaire et dans le module UserForm ouvert tapez le code suivant :
Private Sub UserForm_Click() Static flag As Boolean Dim nomfichier As String If Not flag Then nomfichier = "C:\image1.jpg" Me.Picture = LoadPicture(nomfichier) Me.PictureSizeMode = fmPictureSizeModeStretch Me.Caption = "Images d'arrière-plan modifiables" & nomfichier Else nomfichier = "C:\image2.jpg" Me.Picture = LoadPicture(nomfichier) Me.PictureSizeMode = fmPictureSizeModeZoom Me.PictureAlignment = fmPictureAlignmentTopLeft Me.Caption = "Images d'arrière-plan modifiables" & nomfichier End If Me.Repaint flag = Not flag End Sub
Figure 1 Une image en arrière-plan d’un UserForm
Commentaires
Maintenant, lorsque vous cliquez, les images D: \ image1.jpg et D: \ image2.jpg se remplaceront alternativement sur le formulaire.
■ Le chargement d’une image à partir d’un fichier dans le code est effectué par la fonction LoadPicture, dont la valeur de paramètre est le nom du fichier source.
■ Puisque la valeur de la propriété PictureSizeMode pour l’image D: \ image1.jpg est égale à fmPictureSizeModeStretch, elle s’étire ou se rétrécit hors de proportion afin d’occuper toute la zone cliente du formulaire.
■ La valeur de la propriété PictureSizeMode pour l’image D: \ image2.jpg est égale à fmPictureSizeModeZoom, elle est donc étirée ou rétrécie proportionnellement pour occuper soit toute la largeur, soit la hauteur de la zone cliente du formulaire.
■ La propriété PictureAlignment, définie sur fmPictureAlignmentTopLeft, fait correspondre les coins supérieurs gauche de l’image et la zone de formulaire du client.
Dans la fenêtre Propriétés, l’image est supprimée en plaçant le curseur dans le champ Image et en appuyant sur la touche <Supprimer>. Dans le code, cela est réalisé en affectant la valeur de la propriété Picture à LoadPicture (“”). Par exemple:
Me.Picture = LoadPicture ("")