Delen via


Procedure: Afbeeldingen instellen tijdens runtime (Windows Forms)

U kunt de afbeelding die wordt weergegeven door een Windows Forms PictureBox besturingselement programmeerbaar instellen.

Een afbeelding programmatisch instellen

  • Stel de eigenschap Image in met behulp van de FromFile methode van de klasse Image.

    In het onderstaande voorbeeld is het pad dat is ingesteld voor de locatie van de afbeelding de map Mijn documenten. Dit gebeurt omdat u ervan kunt uitgaan dat de meeste computers met het Windows-besturingssysteem deze map bevatten. Hierdoor kunnen gebruikers met minimale systeemtoegangsniveaus de toepassing veilig uitvoeren. In het onderstaande voorbeeld wordt ervan uitgegaan dat een formulier met een PictureBox controle al is toegevoegd.

    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"));
       }
    

Een afbeelding wissen

  • Laat eerst het geheugen los dat door de afbeelding wordt gebruikt en wis vervolgens de afbeelding. Garbagecollection maakt het geheugen later vrij als geheugenbeheer een probleem wordt.

    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;
    }
    

    Opmerking

    Zie Disposeopschonen voor meer informatie over waarom u de methode moet gebruiken.

    Met deze code wordt de afbeelding gewist, zelfs als een afbeelding tijdens het ontwerp in het besturingselement is geladen.

Zie ook