Procedura: disegnare forme con i controlli OvalShape e RectangleShape (Visual Studio)
Aggiornamento: Luglio 2008
Il controllo OvalShape consente di disegnare cerchi e ovali in un form o in un contenitore, sia in fase di progettazione che in fase di esecuzione. Il controllo RectangleShape consente di disegnare quadrati, rettangoli o rettangoli con angoli arrotondati in un form o in un contenitore, sia in fase di progettazione che in fase di esecuzione.
È possibile personalizzare l'aspetto delle forme modificando la larghezza, il colore e lo stile del bordo. Per impostazione predefinita, lo sfondo delle forme è trasparente. È possibile personalizzare lo sfondo con una tinta unita, un motivo, un riempimento sfumato (una transizione da un colore a un altro) o un'immagine.
Per disegnare una forma semplice in fase di progettazione
Trascinare il controllo OvalShape o RectangleShape dalla scheda Visual Basic Power Pack 1.1 della Casella degli strumenti a un form o un controllo contenitore.
Trascinare i quadratini di ridimensionamento e di spostamento per impostare le dimensioni e la posizione della forma.
Per ridimensionare e posizionare la forma è anche possibile modificare le proprietà Size e Position nella finestra Proprietà.
Per creare un rettangolo con gli angoli arrotondati, selezionare la proprietà CornerRadius nella finestra Proprietà e impostarla su un valore maggiore di 0.
Nella finestra Proprietà è possibile, se lo si desidera, impostare proprietà aggiuntive per modificare l'aspetto delle forme.
Per disegnare una forma semplice in fase di esecuzione
Scegliere Aggiungi riferimento dal menu Progetto.
Nella finestra di dialogo Aggiungi riferimento, selezionare Microsoft.VisualBasic.PowerPacks.VS, quindi scegliere OK.
Nell'editor di codice, aggiungere un'istruzione Imports o using all'inizio del modulo:
Imports Microsoft.VisualBasic.PowerPacks
using Microsoft.VisualBasic.PowerPacks;
Nella routine Event aggiungere il codice seguente:
Dim canvas As New ShapeContainer ' To draw an oval, substitute ' OvalShape for RectangleShape. Dim theShape As New RectangleShape ' Set the form as the parent of the ShapeContainer. canvas.Parent = Me ' Set the ShapeContainer as the parent of the Shape. theShape.Parent = canvas ' Set the size of the shape. theShape.Size = New System.Drawing.Size(200, 300) ' Set the location of the shape. theShape.Location = New System.Drawing.Point(100, 100) ' To draw a rounded rectangle, add the following code: theShape.CornerRadius = 12
ShapeContainer canvas = new ShapeContainer(); // To draw an oval, substitute // OvalShape for RectangleShape. RectangleShape theShape = new RectangleShape(); // Set the form as the parent of the ShapeContainer. canvas.Parent = this; // Set the ShapeContainer as the parent of the Shape. theShape.Parent = canvas; // Set the size of the shape. theShape.Size = new System.Drawing.Size(200, 300); // Set the location of the shape. theShape.Location = new System.Drawing.Point(100, 100); // To draw a rounded rectangle, add the following code: theShape.CornerRadius = 12;
Personalizzazione di forme
Quando si utilizzano le impostazioni predefinite, i controlli OvalShape e RectangleShape vengono visualizzati con un bordo nero continuo largo un pixel e uno sfondo trasparente. Specifiche proprietà consentono di modificare la larghezza, lo stile e il colore del bordo. Proprietà aggiuntive consentono di impostare lo sfondo delle forme su una tinta unita, un motivo, un riempimento sfumato o un'immagine.
Prima di modificare lo sfondo di una forma, è necessario conoscere l'interazione di diverse proprietà.
L'impostazione della proprietà BackColor ha effetto solo se la proprietà BackStyle è impostata su Opaque.
Se la proprietà FillStyle è impostata su Solid, FillColor esegue l'override di BackColor.
Se la proprietà FillStyle è impostata su un valore di motivo quale Horizontal o Vertical, il motivo viene visualizzato in FillColor. Lo sfondo viene visualizzato in BackColor, se la proprietà BackStyle è impostata su Opaque.
Per visualizzare un riempimento sfumato, impostare la proprietà FillStyle su Solid e la proprietà FillGradientStyle su un valore diverso da None.
L'impostazione della proprietà BackgroundImage su un'immagine comporta l'override di tutte le altre impostazioni dello sfondo.
Per disegnare un cerchio con un bordo personalizzato
Trascinare il controllo OvalShape dalla scheda Visual Basic Power Pack 1.1 della Casella degli strumenti a un form o un controllo contenitore.
Nella finestra Proprietà, per la proprietà Size impostare valori Height e Width uguali.
Impostare la proprietà BorderColor sul colore desiderato.
Impostare la proprietà BorderStyle su qualsiasi valore diverso da Solid.
Impostare la proprietà BorderWidth sulle dimensioni in pixel desiderate.
Per disegnare un cerchio con un riempimento a tinta unita
Trascinare il controllo OvalShape dalla scheda Visual Basic Power Pack 1.1 della Casella degli strumenti a un form o un controllo contenitore.
Nella finestra Proprietà, per la proprietà Size impostare valori Height e Width uguali.
Impostare la proprietà BackColor sul colore desiderato.
Impostare la proprietàBackStylesu Opaque.
Per disegnare un cerchio con un motivo di riempimento
Trascinare il controllo OvalShape dalla scheda Visual Basic Power Pack 1.1 della Casella degli strumenti a un form o un controllo contenitore.
Nella finestra Proprietà, per la proprietà Size impostare valori Height e Width uguali.
Impostare la proprietà BackColor sul colore di sfondo desiderato.
Impostare la proprietàBackStylesu Opaque.
Impostare la proprietà FillColor sul colore del motivo desiderato.
Impostare la proprietà FillStyle su qualsiasi valore diverso da Transparent o Solid.
Per disegnare un cerchio con un riempimento sfumato
Trascinare il controllo OvalShape dalla scheda Visual Basic Power Pack 1.1 della Casella degli strumenti a un form o un controllo contenitore.
Nella finestra Proprietà, per la proprietà Size impostare valori Height e Width uguali.
Impostare la proprietà FillColor sul colore iniziale desiderato.
Impostare la proprietà FillGradientColor sul colore finale desiderato.
Impostare la proprietà FillGradientStyle su un valore diverso da None.
Per disegnare un cerchio con un'immagine di riempimento
Trascinare il controllo OvalShape dalla scheda Visual Basic Power Pack 1.1 della Casella degli strumenti a un form o un controllo contenitore.
Nella finestra Proprietà, per la proprietà Size impostare valori Height e Width uguali.
Selezionare la proprietà BackgroundImage e fare clic sul pulsante con i puntini di sospensione (...).
Nella finestra di dialogo Seleziona risorsa, selezionare l'immagine da visualizzare. Se non viene elencata alcuna risorsa immagine, fare clic su Importa per individuare il percorso di un'immagine.
Scegliere OK per inserire l'immagine.
Vedere anche
Attività
Procedura: disegnare linee con il controllo LineShape (Visual Studio)
Concetti
Introduzione ai controlli Line e Shape (Visual Studio)
Riferimenti
Cronologia delle modifiche
Data |
Cronologia |
Motivo |
---|---|---|
Luglio 2008 |
Aggiunto argomento. |
Modifica di funzionalità in SP1. |