我的图片框没有完全圆

时间:2015-08-14 21:18:10

标签: vb.net picturebox

在关注视频后,试图在visual basic中获得圆形图片框 Box不会完全圆,我一直在增加vales并且它工作不正常,有人可以显示我做错了吗

Public Sub RoundShape(ByVal ctl As System.Windows.Forms.Control, Optional ByVal CirRay As Single = 125.0!)
    Dim gr As System.Drawing.Drawing2D.GraphicsPath = New System.Drawing.Drawing2D.GraphicsPath()
    gr.AddPie(5, 5, CirRay, CirRay, 180.0!, 90.0!) 'Top left Corner'
    gr.AddPie(ctl.Width - CirRay, 5, CirRay, CirRay, 270.0!, 90.0!) 'Top Right Corner'
    gr.AddPie(5, ctl.Height - CirRay, CirRay, CirRay, 90.0!, 90.0!) 'Bottom left corner'
    gr.AddPie(ctl.Width - CirRay, ctl.Height - CirRay, CirRay, CirRay, 0.0!, 90.0!) 'Bottom right corner'


    gr.AddRectangle(New Rectangle(2, CirRay / -2, CirRay / -2, ctl.Height - CirRay))
    gr.AddRectangle(New System.Drawing.Rectangle(-1, CirRay / -2, CirRay / -2, ctl.Height - CirRay))
    gr.AddRectangle(New Rectangle(ctl.Width - CirRay / -1, CirRay / -1, CirRay / 2, ctl.Height - CirRay))

    ctl.Region = New Region(gr)
End Sub

修改:链接到参考视频https://www.youtube.com/watch?v=vD3XDU0X1Gk

编辑:好吧我编辑了代码,所以我更接近于获得一个完全圆形的图片框但是现在中间有一个直线下方并且看不到如何将对象推到一起

编辑:当我拍摄时,图片框大部分都是完整的

Public Sub RoundShape(ByVal ctl As System.Windows.Forms.Control, Optional ByVal CirRay As Single = 125.0!)

然后将图片框的大小更改为130,130,但是我无法将其固定下来或做任何大小而不会破坏,是否有某种方法可以根据图片框的高度使其完全圆整和宽度或我只是改变

Single = 125.0!

价值,只是尝试从那里开始工作?

0 个答案:

没有答案