CGiuseppe TechBlog


Free - Ideas WebLog
Ora e Data

Picture Box - Settare il Padding

Un problema che mi è capitato creando un applicazione per la visualizzazione delle immagini: ho un Form con una Picture Box (denominato PictureBox1), una TextBox (denominato TextBox1) e un bottone (denominato Button1). Dovevo inserire in questa TextBox, durante l'esecuzione del programma, un valore per settare il padding della PictureBox. Un problema che vi può capitare accade quando si inserisce questo codice (come avviene spontaneamente):

PictureBox1.Padding = TextBox1.Text

Il problema è che il computer vi sottolinea TextBox1.Text e la tooltip vi dice che non è possibile usare questo valore, come si vede in figura 1.


Figura 1 : Impossibilità di usare il valore della TextBox1.

Questo problema avviene nella maggior parte dei casi, soprattutto nei principianti, perchè, essendo il Padding una proprietà poco usata - o - poco conosciuta non si conosce bene il tipo accettato da questa proprietà.

Per sistemare tutto basta inserire il codice:

PictureBox1.Padding = New
System.Windows.Forms.Padding(CInt(TextBox1.Text))

Il tipo di dato da utilizzare, quindi dev' essere "System.Windows.Forms.Padding". Siccome devo creare una nuova istanza del tipo descritto precedentemente, quindi inserire la parola chiave New. Per evitare che un utente, per sbaglio, inserisca un valore non numerico nel form è meglio racchiudere tutto in un blocco Try - Catch . Ecco il codice completo (formattato con i colori dell'ambiente di sviluppo):
 
Try
PictureBox1.Padding =
New System.Windows.Forms.Padding(CInt(TextBox1.Text), CInt(TextBox1.Text), CInt(TextBox1.Text), CInt(TextBox1.Text))
PictureBox1.Refresh()
Catch
MsgBox(
"Inserire un valore valido per il Padding")
End Try
 
Ho aggiunto l'istruzione "PictureBox1.Refresh()" per fare in modo che dopo che imposto il padding, aggiorno la Picture Box.


Figura 2: Debug Del programma, senza Padding


 Figura 3: Debug impostando il padding a 30


Figura 4: Debug, se si immette un valore nullo oppure una stringa, appare il messaggio di errore.

Bene. Credo che chi si è trovato davanti a questo problema, possa aggiustarlo con queste istruzioni.
Grazie per aver letto il messaggio.
Categoria: Visual Basic .NET
venerdì, 21 lug 2006 Ore. 15.33
Statistiche
  • Views Home Page: 10.306
  • Views Posts: 13.709
  • Views Gallerie: 0
  • n° Posts: 20
  • n° Commenti: 5
Archivio Posts
Anno 2006
Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003