Procedura: Modificare le dimensioni o il posizionamento di un'immagine in fase di esecuzione (Windows Form)
Se si utilizza il controllo Windows Forms PictureBox in un modulo, è possibile impostare la proprietà SizeMode:
Allineare l'angolo superiore sinistro dell'immagine all'angolo superiore sinistro del controllo
Centrare l'immagine all'interno del controllo
Regolare le dimensioni del controllo per adattarla all'immagine visualizzata
Allungare qualsiasi immagine visualizzata per farla adattare al controllo
L'estensione di un'immagine (in particolare una in formato bitmap) può produrre una perdita di qualità dell'immagine. I metafile, che sono elenchi di istruzioni grafiche per il disegno di immagini in fase di esecuzione, sono più adatti per l'estensione rispetto alle bitmap.
Per impostare la proprietà SizeMode in fase di esecuzione
Impostare SizeMode su Normal (impostazione predefinita), AutoSize, CenterImageo StretchImage. Normal significa che l'immagine viene posizionata nell'angolo in alto a sinistra del controllo; se l'immagine è più grande del controllo, i suoi bordi inferiori e destro vengono tagliati. CenterImage significa che l'immagine è centrata all'interno del controllo; se l'immagine è più grande del controllo, i bordi esterni dell'immagine vengono tagliati. AutoSize significa che le dimensioni del controllo vengono modificate in base alle dimensioni dell'immagine. StretchImage è inverso e indica che le dimensioni dell'immagine vengono modificate in base alle dimensioni del controllo.
Nell'esempio seguente il percorso impostato per il percorso dell'immagine è la cartella Documenti personali. Questa operazione viene eseguita, perché è possibile presupporre che la maggior parte dei computer che eseguono il sistema operativo Windows includerà questa directory. Ciò consente anche agli utenti con livelli di accesso minimi al sistema di eseguire l'applicazione in modo sicuro. Nell'esempio seguente si presuppone che esista un modulo a cui è già stato aggiunto un controllo PictureBox.
Private Sub StretchPic() ' Stretch the picture to fit the control. PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage ' Load the picture into the control. ' 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 StretchPic(){ // Stretch the picture to fit the control. PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; // Load the picture into the control. // 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 StretchPic() { // Stretch the picture to fit the control. pictureBox1->SizeMode = PictureBoxSizeMode::StretchImage; // Load the picture into the control. // 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")); }
Vedere anche
.NET Desktop feedback