Procedura: impostare le immagini in fase di esecuzione (Windows Form)
È 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. Questa scelta è dovuta al fatto che si suppone che questa directory sia presente sulla maggior parte dei computer con sistema operativo Windows. Consente inoltre agli utenti con livelli minimi di accesso al sistema di eseguire l'applicazione in modo sicuro. 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 Pulizia 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)
Riferimenti
Cenni preliminari sul controllo PictureBox (Windows Form)