創(chuàng)建一個工程,窗口上面放一個PictureBox,大小相對大一些,將其ScaleMode屬性設(shè)為3。
站在用戶的角度思考問題,與客戶深入溝通,找到宣恩網(wǎng)站設(shè)計與宣恩網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名申請、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋宣恩地區(qū)。
然后放一個按鈕,其中加入以下代碼:
'這段代碼演示了如何使用VB的Circle方法繪制各種各樣的圓。
Form1.Picture1.Circle (60, 60), 40, vbRed '畫一個圓心(60,60)半徑40的紅色的圓(默認(rèn)空心)
Form1.Picture1.FillStyle = 0 '設(shè)定填充模式為實(shí)心
Form1.Picture1.FillColor = vbBlue '設(shè)定填充色藍(lán)色
Form1.Picture1.Circle (190, 60), 40, vbRed '下來畫出來的就是填充了實(shí)心藍(lán)色的圓了
Form1.Picture1.DrawWidth = 3 '設(shè)定邊框?qū)挾葹?
Form1.Picture1.Circle (60, 190), 40, vbRed '這次繪制出來的圓邊框粗細(xì)為3
Form1.Picture1.DrawStyle = 5 '設(shè)定邊框不可見
Form1.Picture1.FillColor = vbRed '設(shè)定填充色紅色
Form1.Picture1.Circle (190, 190), 40 '這次繪制出來一個無邊框、填充顏色是紅色的圓
Form1.Picture1.Refresh
然后試試看,對照注釋應(yīng)該就明白了。
————————————————
PS:對樓上 wys_sans給出的方法的評價:
其方法1、根本不能稱作畫圓;
其方法2、很顯然Circle可以直接畫實(shí)心的圓,只是這位不知道而已;
其方法3、效率極低效果極差的最糟糕方法。
VB.NET沒用過
VB6的話用form.circle方法畫圓,圓的半徑和圓點(diǎn)用form.width或者form.height乘以比例數(shù)來得到,然后在form_resize事件中重畫圓就可以了
不知道和VB.NET差別大不大
Dim myGraphics As Graphics = Me.CreateGraphics '聲明并創(chuàng)建一個Graphics對象
Dim myPen As Pen = New Pen(Drawing.Color.Black, 3) '聲明一個畫筆,并設(shè)定顏色和粗細(xì)
myPen.DashStyle = Drawing.Drawing2D.DashStyle.Solid '線型,Solid是實(shí)線
myGraphics.DrawEllipse(myPen, 200, 200, 100, 100) '畫圓,數(shù)值依次是:橫坐標(biāo)、縱坐標(biāo)、寬度和高度(寬高相同為正圓,否則為橢圓)
myGraphics.Dispose() '釋放Graphics占用的資源
用Circel方法。
首先要做個容器,指明你在什么地方畫。比如在窗體上,那么就是form1.Circel
Circel方法需要的參數(shù)、格式:
[容器名.]Circel[[step]
(X,Y),
半徑,
[,顏色][,起始角][,終止角][,長短軸比率]]
例:form1.Circel(25,25),
10,
RGB(100,100,50)
就是說在(25,25)為圓心半徑為10畫個該顏色的圓。
在PictureBox1上畫紅色的實(shí)心圓:
Private Sub DrawCircle(ByVal cp As Point, ByVal radius As Integer, ByVal color As Brush)
Dim gr As Graphics
gr = PictureBox1.CreateGraphics
Dim rect As Rectangle = New Rectangle(cp.X - radius, cp.Y - radius, 2 * radius, 2 * radius)
gr.DrawEllipse(Pens.Black, rect)
gr.FillEllipse(color, rect)
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
DrawCircle(New Point(120, 100), 80, Brushes.Red)
End Sub
窗體上添加一個按鈕,在該按鈕的單擊事件里編寫代碼如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'聲明窗體的Me.CreateGraphics對象
Dim MyGraphics As Graphics = Me.CreateGraphics
Dim Cx As Integer = 150 '圓心的X坐標(biāo)
Dim Cy As Integer = 150 '圓心的Y坐標(biāo)
Dim R As Integer '圓的半徑
'繪制半徑為R的圓
For R = 5 To 100 Step 5
MyGraphics.DrawEllipse(Pens.Black, New Rectangle(Cx - R, Cy - R, 2 * R, 2 * R))
Next
End Sub
‘用黑色畫筆繪制一組同心圓,半徑從5開始,增量為5。
說明:
DrawEllipse是VB.Net的Graphics類的繪制橢圓的方法;他有幾種格式,上面使用的是一種;
DrawEllipse(畫筆的顏色,繪制橢圓所需要的矩形區(qū)域)
其中:繪制橢圓所需要的矩形區(qū)域,如果被定義為正方形,就演變成繪制圓,定義該區(qū)域由死個數(shù)值確定,第1個數(shù)值,確定該區(qū)域左上角的X坐標(biāo),第2個數(shù)值,確定該區(qū)域左上角的Y坐標(biāo),第3個數(shù)值,確定該區(qū)域的寬度,第4個數(shù)值,確定該區(qū)域的高度。
例如1:
DrawEllipse(Pens.Black, New Rectangle(150, 150, 50, 50))
就是以圓心坐標(biāo)為(100,100),繪制半徑為50 的圓。其實(shí)在VB.NET中,是告訴系統(tǒng)在以左上角坐標(biāo)(150,150),邊長為50的正方形里繪制內(nèi)切圓。理解了是在正方形里繪制內(nèi)切圓,就可以通過數(shù)學(xué)計算,知道如何繪制了。
同理例如2:
DrawEllipse(Pens.Black, New Rectangle(150, 150, 100, 50))
就是以圓心坐標(biāo)為(100,100),繪制半徑為50 的圓。其實(shí)在VB.NET中,是告訴系統(tǒng)在以左上角坐標(biāo)(150,150),長軸為100,短軸為50的內(nèi)切橢圓。
新聞名稱:vb.net畫圓的方法,vb畫實(shí)心圓怎么畫
文章起源:http://chinadenli.net/article0/dssheoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、App開發(fā)、手機(jī)網(wǎng)站建設(shè)、商城網(wǎng)站、域名注冊、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)