以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]GDI绘图问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=114480)

--  作者:ymjr2011
--  发布时间:2018/2/7 10:02:00
--  [求助]GDI绘图问题
    Dim Val3 As Integer = Rand.Next(10,360)
    Dim lb As WinForm.Label = Forms("Main").Controls("Label1")
    lb.Text = val3
    Dim p As WinForm.Painter = Forms("main").Controls("Painter1")
    Dim g As Graphics = p.Graphics
    Dim pn As New Pen(Color.Red,5)   
    g.DrawEllipse(Pens.green,10,10,100,100)
    g.DrawEllipse(Pens.green, 0,0,120,120)
    \'DrawArc(pen,x,y,width,height,startAngle,sweepAngle)
    Dim startAngle,sweepAngle As Integer
    \'绘制一个弧形,从45度角开始,幅度为180度
    \'sweepAngle = 180
    g.DrawArc(pn,5,5,110,110,-90,val3 )
    p.Repaint()

内圈弧形不能跟随val3值变小而填充红色变小 ,是哪里有问题?

--  作者:有点甜
--  发布时间:2018/2/7 10:07:00
--  

每次,都需要清空重新画的,不然,所有的图像都会叠加在一起的。

 

抑或是,你再画一个和背景颜色一样的圆弧,盖住之前的。


--  作者:ymjr2011
--  发布时间:2018/2/7 11:36:00
--  
只清空弧形请问怎么写?


--  作者:有点甜
--  发布时间:2018/2/7 11:37:00
--  
以下是引用ymjr2011在2018/2/7 11:36:00的发言:
只清空弧形请问怎么写?

 

无法清空弧形。你可以再画一个同样大小,颜色和背景颜色一致的弧形,盖住。