Como definir imagens em tempo de execução (Windows Forms)
Você pode definir programaticamente a imagem exibida por um controle do Windows Forms PictureBox .
Para definir uma imagem programaticamente
Defina a Image propriedade usando o FromFile método da Image classe.
No exemplo abaixo, o caminho definido para o local da imagem é a pasta Meus Documentos. Isso acontece porque presumimos que a maioria dos computadores rodando o sistema operacional Windows vai incluir este diretório. Isso também permite que usuários com níveis mínimos de acesso ao sistema executem com segurança o aplicativo. O exemplo abaixo pressupõe um formulário com um PictureBox controle já adicionado.
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->Image = Image::FromFile(String::Concat( System::Environment::GetFolderPath( System::Environment::SpecialFolder::Personal), "\\Image.gif")); }
Para limpar um gráfico
Primeiro, libere a memória que está sendo usada pela imagem e, em seguida, limpe o gráfico. A coleta de lixo liberará a memória mais tarde se o gerenciamento de memória se tornar um problema.
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; }
Observação
Para obter mais informações sobre por que você deve usar o Dispose método dessa maneira, consulte Limpando recursos não gerenciados.
Esse código limpará a imagem mesmo se um gráfico foi carregado no controle em tempo de design.
Confira também
.NET Desktop feedback