Condividi tramite


Procedura: impostare le immagini in fase di esecuzione (Windows Form)

Aggiornamento: novembre 2007

È possibile impostare a livello di codice l'immagine visualizzata da un controllo PictureBox Windows Form.

Per impostare un'immagine a livello di codice

  • Impostare la proprietà Image tramite il metodo FromFile della classe Image.

    Nell'esempio qui di seguito, il percorso impostato per la posizione dell'immagine coincide con la cartella Documenti. Si consiglia di utilizzare questa posizione perché tale cartella è presente nella maggior parte dei computer che esegue il sistema operativo Windows. La scelta di questa posizione consente inoltre di eseguire l'applicazione senza problemi agli utenti che dispongono di livelli di accesso minimo. Nell'esempio riportato di seguito si presuppone che un controllo PictureBox sia già stato aggiunto al form.

    Private Sub LoadNewPict()
       ' 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 LoadNewPict(){
       // 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 LoadNewPict(){
       // You should replace the bold image 
       // in the sample below with an icon of your own choosing.
       pictureBox1.get_Image().FromFile
       (System.Environment.GetFolderPath
       (System.Environment.SpecialFolder.Personal)
       + "\\Image.gif");
    
    private:
       void LoadNewPict()
       {
          // 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"));
       }
    

Per cancellare un'immagine

  • Rilasciare innanzitutto la memoria utilizzata dall'immagine, quindi cancellare l'oggetto grafico. In caso di problemi di gestione della memoria, sarà possibile utilizzare successivamente la procedura di Garbage Collection.

    If Not (PictureBox1.Image Is Nothing) Then
       PictureBox1.Image.Dispose()
       PictureBox1.Image = Nothing
    End If
    
    if (pictureBox1.Image != null) 
    {
       pictureBox1.Image.Dispose();
       pictureBox1.Image = null;
    }
    
    if (pictureBox1->Image != nullptr)
    {
       pictureBox1->Image->Dispose();
       pictureBox1->Image = nullptr;
    }
    
    Nota:

    Per ulteriori informazioni sui motivi per i quali è preferibile utilizzare il metodo Dispose in questo modo, vedere Pulitura delle risorse non gestite.

    Con questo codice l'immagine verrà cancellata anche se è stata caricata nel controllo in fase di progettazione.

Vedere anche

Attività

Procedura: caricare un'immagine utilizzando la finestra di progettazione (Windows Form)

Procedura: modificare le dimensioni o la posizione di un'immagine in fase di esecuzione (Windows Form)

Riferimenti

Cenni preliminari sul controllo PictureBox (Windows Form)

PictureBox

Image.FromFile

Altre risorse

Controllo PictureBox (Windows Form)