Comment : modifier la taille ou l'emplacement d'une image au moment de l'exécution (Windows Forms)

Mise à jour : novembre 2007

Si vous utilisez le contrôle Windows Forms PictureBox sur un formulaire, vous pouvez attribuer à sa propriété SizeMode la valeur suivante :

  • aligner le coin supérieur gauche de l'image avec celui du contrôle ;

  • centrer l'image dans le contrôle ;

  • ajuster la taille du contrôle pour l'adapter à celle de l'image qu'il affiche ;

  • étirer une image pour l'adapter à la taille du contrôle qu'elle contient.

L'étirement d'une image (en particulier d'une image au format bitmap) peut entraîner une dégradation de sa qualité. Les métafichiers qui sont des listes d'instructions graphiques destinées au dessin d'images au moment de l'exécution, se prêtent mieux à l'étirement que les bitmaps.

Pour définir la propriété SizeMode au moment de l'exécution

  • Attribuez à SizeMode les valeurs Normal (par défaut), AutoSize, CenterImageou StretchImage. Normal signifie que l'image est placée dans l'angle supérieur gauche du contrôle ; si l'image est plus grande que le contrôle, ses bords inférieur et droit sont découpés. CenterImage signifie que l'image est centrée dans le contrôle ; si l'image est plus grande que le contrôle, l'image à l'extérieur des bords est découpée. AutoSize signifie que la taille du contrôle s'ajuste à la taille de l'image. StretchImage est l'inverse, et signifie que la taille de l'image s'ajuste à la taille du contrôle.

    Dans l'exemple ci-dessous, le chemin défini pour l'emplacement de l'image est le dossier Mes documents. La plupart des ordinateurs exécutant le système d'exploitation Windows disposent, en effet, de ce dossier. Ceci permet également aux utilisateurs disposant de niveaux d'accès minimaux au système d'exécuter l'application en toute sécurité. L'exemple suivant suppose un formulaire auquel un contrôle PictureBox a déjà été ajouté.

    Private Sub StretchPic()
       ' Stretch the picture to fit the control.
       PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage
       ' Load the picture into the control.
       ' You should replace the bold image 
       ' in the sample below with an icon of your own choosing.
       PictureBox1.Image = Image.FromFile _
       (System.Environment.GetFolderPath _
       (System.Environment.SpecialFolder.Personal) _
       & "\Image.gif")
    End Sub
    
    private void StretchPic(){
       // Stretch the picture to fit the control.
       PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
       // Load the picture into the control.
       // You should replace the bold image 
       // in the sample below with an icon of your own choosing.
       // Note the escape character used (@) when specifying the path.
       PictureBox1.Image = Image.FromFile _
       (System.Environment.GetFolderPath _
       (System.Environment.SpecialFolder.Personal) _
       + @"\Image.gif")
    }
    
    private void StretchPic(){
       // Stretch the picture to fit the control.
       pictureBox1.set_SizeMode(PictureBoxSizeMode.StretchImage);
       // Load the picture into the control.
       // You should replace "image.gif" in the sample below 
       // with an icon of your own choosing.
       pictureBox1.set_Image(Image.FromFile
       (System.Environment.GetFolderPath
       (System.Environment.SpecialFolder.Personal)
       + "\\Image.gif"));
    }
    
    private:
       void StretchPic()
       {
          // Stretch the picture to fit the control.
          pictureBox1->SizeMode = PictureBoxSizeMode::StretchImage;
          // Load the picture into the control.
          // You should replace the bold image 
          // in the sample below with an icon of your own choosing.
          pictureBox1->Image = Image::FromFile(String::Concat(
             System::Environment::GetFolderPath(
             System::Environment::SpecialFolder::Personal),
             "\\Image.gif"));
       }
    

Voir aussi

Tâches

Comment : charger une image à l'aide du concepteur (Windows Forms)

Comment : définir des images au moment de l'exécution (Windows Forms)

Référence

PictureBox

Vue d'ensemble du contrôle PictureBox (Windows Forms)

Autres ressources

PictureBox, contrôle (Windows Forms)