ustvariti nov Visual Basic projekt. Program se je začel z barvanjem na gumb , ki se lahko opravi z uporabo " AddEllipse " razred . Vnesitenaslednje v Visual Basic oknu:
Dimkot nove System.Drawing.Drawing2D.GraphicsPath
recRegion = new RectangleF ( 0, 0 , Me.Width , Me.Height )
a.AddEllipse ( recRegion )
Me.Region = New Region ( a)
2
Nariši rob gumbov . Da bi zagotovili nemoteno krivulje so pripravljeni , nastavite SmoothingMode lastnost Glajenje . Vnesite naslednje kode v Visual Basic oknu:
Dim p1 Kot Pen
Dim p2 so PEN
recBorder = new RectangleF ( 1, 1, Me.Width - 2, Me.Height - 2)
"Ta linija je zelo pomembno, da imajo gladke krivulje
g.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias
. " zdaj moramo pripraviti 3D učinek
.
g.DrawArc ( p1 , recBorder , 180, -180 )
g.DrawArc ( P2, recBorder , 180, 180)
3
Postavite nalepko z besedilom v notranjosti gumb in napišite glavno krmilno zanko , da ugotovi, če je bil pritisnjengumb . Vnesite naslednje kode v Visual Basic oknu:
" . Izmerite velikost String , da ga centralizirati
" Če je prisotnaslika , ki jesestavljen besedilo ob ikoni <. br>
Dim Velikost pisave Kot SizeF = g.MeasureString ( Me.Text , Me.Font )
"Če jena miški pripravi besedilo in slike , če so na voljo ,
" premaknilo 2 pik na desno za simulacijo 3D učinek
Če Me.mousePressed Potem
Če Me._Image ni nič Potem
g.DrawString ( Me.Text , Me.Font , stringBrush , _
( ( ( Me.Width + 3 ) - textSize.Width ) /2 ) + 2 , _
( ( ( Me.Height + 2 ) - textSize.Height ) /2 ) + 2 )
Else
Dim pt Kot nova točka ( ( ( Me.Width + 3) /12) + 1 , _
( ( Me.Height + 2-16 ) /2) + 1 )
Dim recString Kot nov pravokotnik ( pt , Nova velikost ( 16, 16 ) )
g.DrawImage ( _Image , recString )
g.DrawString ( Me.Text , Me.Font , stringBrush , _
recString.X + recString.Width + 3 ,
( ( ( Me.Height + 2 ) - textSize.Height ) /2 ) + 2)
Konec Če
Else
Če Me._Image ni nič Potem
g.DrawString ( Me.Text , Me.Font , stringBrush , _
( ( ( Me.Width + 3) - textSize.Width ) /2 ) _
( ( ( Me.Height + 2 ) - textSize.Height ) /2 ) )
Else
Dim pt Kot nova točka ( ( Me.Width + 3) /12 , ( Me.Height + 2-16 ) /2 )
Dim recString Kot nov pravokotnik ( pt , New velikost ( 16, 16 ) )
g.DrawImage ( _Image , recString )
g . drawstring ( Me.Text , Me.Font , stringBrush , _
recString.X + recString.Width + 3 ,
( ( ( Me.Height + 2 ) - textSize.Height ) /2) )
Konec Če Konec Če
4
Save program in zaženite program . Okno naj bi pop up z vrsto okroglih in eliptičnih gumbov .