首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

一下,怎么在form上画一个圆!

2012-02-11 
弱弱的问一下,如何在form上画一个圆!!!或者画个点,画条线什么的,小弟不晓得该从哪里下手!!![解决办法]GDI+

弱弱的问一下,如何在form上画一个圆!!!
或者画个点,画条线什么的,小弟不晓得该从哪里下手!!!

[解决办法]
GDI+,去官网上看看
[解决办法]
this.Paint += new System.Windows.Forms.PaintEventHandler(this.Form1_Paint);


private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawEllipse(Pens.Red, 0, 0, 200, 200);
}
[解决办法]
private void button1_Click(object sender, EventArgs e)
{
using (Graphics g = this.CreateGraphics())
{
g.DrawEllipse(Pens.Red,0, 0, 200, 200);
}
}
但这个圆在窗体最小化或移动后是不会重画的 最好的办法是把圆的信息保存另外的变量 在Paint事件里生画
[解决办法]
mark~~~~
[解决办法]
Bitmap formImage;

public Form1()
{
InitializeComponent();
formImage = new Bitmap(this.ClientRectangle.Width, this.ClientRectangle.Height);
}

private void button1_Click(object sender, EventArgs e)
{
using (Graphics g = Graphics.FromImage(formImage))
{
g.DrawEllipse(Pens.Red, 0, 0, 200, 200);
this.Invalidate(ClientRectangle);
}
}

private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawImage(formImage, 0, 0);
}

热点排行