谁能帮我详细解释一下这个用C#画图的代码是怎样画出来的?

谁能帮我详细解释一下这个用C#画图的代码是怎样画出来的?
private void Form1_Paint(object sender,PaintEventArgs e)
{
// 准备平行四边形
Point[] sbx = new Point[]{
new Point(100,50),
new Point(400,50),
new Point(350,200),
new Point(50,200)
};
// 绘制
e.Graphics.FillPolygon(SystemBrushes.Window,sbx);
}
阳峰 1年前 已收到1个回答 举报

dlfaye 幼苗

共回答了15个问题采纳率:73.3% 举报

前面不用解释了,就是定义四个点,形成了一个区域.
e.Graphics.FillPolygon(SystemBrushes.Window,sbx);的意思是用笔刷(笔刷的颜色是工作区背景颜色)填充sbx这个区域.颜色可以改为别的,如SystemBrushes.HotTrack(热跟踪颜色)

1年前 追问

6

阳峰 举报

e.Graphics.FillPolygon和 Graphics g = this.CreateGraphics(); g.FillPolygon有什么区别啊?那个e代表什么?

举报 dlfaye

e可以理解为自动传递过来的参数。这个e在不同的事件中有不同的含义。 例如,在form的mousemove事件中,传递过来的是鼠标的信息,如位置(e.x,e.y)等,你可以到这个事件里实验一下,输入e,再输入一个“点",e后面的扩展信息就自动出来了。而在paint中,传过来的是PaintEventArgs,就是为 Paint 事件提供数据的基类。通过它,你可以使用form的画布。
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.017 s. - webmaster@yulucn.com