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)
Riferimenti
Cenni preliminari sul controllo PictureBox (Windows Form)