Opret en ny Visual Basic-projekt . Programmet kan startes ved at male på knappen, hvilket kan gøres ved hjælp af " AddEllipse " klasse. Skrive følgende i Visual Basic vindue : Hej
Dim A som ny System.Drawing.Drawing2D.GraphicsPath
recRegion = Ny RectangleF ( 0, 0, Me.Width , Me.Height )
a.AddEllipse ( recRegion )
Me.Region = Ny Region (a )
2
Tegn kanten af knapperne. For at sikre bløde kurver er tegnet , skal du indstille SmoothingMode ejendommen til Antialias . Skriv følgende kode i Visual Basic vindue : Hej
Dim p1 Som Pen
Dim p2 Som Pen
recBorder = Ny RectangleF ( 1, 1, Me.Width - 2, Me.Height - 2)
» Denne linje er meget vigtigt at have glatte kurver
g.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias
. " Nu er vi nødt til at trække 3D-effekten hoteltilbud .
g.DrawArc ( p1 , recBorder , 180, -180 )
g.DrawArc ( p2 , recBorder , 180, 180 )
3
Placer en tekst mærkat knappen , og skriv de vigtigste kontrol loop til at afgøre, om der er blevet trykket på en knap . Skriv følgende kode i Visual Basic vindue : Hej
' . Måle størrelsen af String til at centralisere det
' Hvis et billede er til stede , bliver teksten trukket ved siden af ikonet <. br>
Dim Tekststørrelse Som SizeF = g.MeasureString ( Me.Text , Me.Font )
" Hvis musen er trykket trække teksten og billedet , hvis det er tilgængeligt , salg
' flyttet 2 pixels til højre for at simulere 3D-effekten
p Hvis Me.mousePressed Så
Hvis Me._Image er intet Så
g.DrawString ( Me.Text , Me.Font , stringBrush , _
((( Me.Width + 3) - textSize.Width ) /2) + 2 , _
((( Me.Height + 2) - textSize.Height ) /2) + 2)
Else
Dim pt Som Nyt punkt ((( Me.Width + 3) /12) + 1 , _
( ( Me.Height + 2 - 16) /2) + 1)
Dim recString Som New rektangel ( pt, ny størrelse (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)
End If
Else
Hvis Me._Image er intet Så
g.DrawString ( Me.Text , Me.Font , stringBrush , _
((( Me.Width + 3) - textSize.Width ) /2 ) , _
((( Me.Height + 2) - textSize.Height ) /2) )
Else
Dim pt Som Nyt punkt ( ( Me.Width + 3) /12 , ( Me.Height + 2 - 16) /2)
Dim recString Som New rektangel ( pt, ny størrelse (16 , 16) )
g.DrawImage ( _Image , recString )
g . snøre ( Me.Text , Me.Font , stringBrush , _
recString.X + recString.Width + 3 ,
((( Me.Height + 2) - textSize.Height ) /2 ))
End If
End If
4
gemme programmet , og kør programmet. Et vindue skal poppe op med en serie af cirkulære og elliptiske knapper.
Hoteltilbud