快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

vb.net圆形动画 vb圆形按钮控件

VB.net该如何将图片圆形显示?

新建一个Winform,拖两个图片框。图片框1在设计器中选择一个图片(尺寸在图片框容纳为佳)。如下代码测试通过:

创新互联主营曾都网站建设的网络公司,主营网站建设方案,成都app软件开发公司,曾都h5小程序制作搭建,曾都网站营销推广欢迎曾都等地区企业咨询

private void button1_Click(object sender, EventArgs e)

{

Image img1 = this.pictureBox1.Image;

Image img2 = CropToCircle(img1);

this.pictureBox2.Image = img2;

}

public Image CropToCircle(Image img1)

{

Image img2 = new Bitmap(img1.Width, img1.Height, 

img1.PixelFormat);

Graphics g = Graphics.FromImage(img2);

using (Brush br = 

new SolidBrush(SystemColors.Control))//背景色

{

g.FillRectangle(br, 0, 0, 

img2.Width, img2.Height);

}

GraphicsPath path = new GraphicsPath();

path.AddEllipse(0, 0, img2.Width, img2.Height);

g.SetClip(path);

g.DrawImage(img1, 0, 0);

return img2;

}

如何用VB.NET画同心圆

窗体上添加一个按钮,在该按钮的单击事件里编写代码如下:

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坐标

Dim Cy As Integer = 150 '圆心的Y坐标

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(画笔的颜色,绘制椭圆所需要的矩形区域)

其中:绘制椭圆所需要的矩形区域,如果被定义为正方形,就演变成绘制圆,定义该区域由死个数值确定,第1个数值,确定该区域左上角的X坐标,第2个数值,确定该区域左上角的Y坐标,第3个数值,确定该区域的宽度,第4个数值,确定该区域的高度。

例如1:

DrawEllipse(Pens.Black, New Rectangle(150, 150, 50, 50))

就是以圆心坐标为(100,100),绘制半径为50 的圆。其实在VB.NET中,是告诉系统在以左上角坐标(150,150),边长为50的正方形里绘制内切圆。理解了是在正方形里绘制内切圆,就可以通过数学计算,知道如何绘制了。

同理例如2:

DrawEllipse(Pens.Black, New Rectangle(150, 150, 100, 50))

就是以圆心坐标为(100,100),绘制半径为50 的圆。其实在VB.NET中,是告诉系统在以左上角坐标(150,150),长轴为100,短轴为50的内切椭圆。

vb.net 动画

可以啊

me_paint 事件中添加画图语句

me.creategraphic.drawellipse(pen,center,r,r)

center 是圆心位置point 类型数据

添加一个timer控件 控制动画

在控件的tick事件中添加语句

center.x+=1

center.y=center.x * 10+50

me.invalidate '(以一次函数y=10x+50运动,可以换成你需要的运动轨迹)


新闻标题:vb.net圆形动画 vb圆形按钮控件
链接分享:http://6mz.cn/article/dosjhge.html

其他资讯