shahram_c1
جمعه 05 خرداد 1391, 00:51 صبح
سلام دوستان؛
کد زیر مربوط میشه به رسم یه چند ضلعی روی فرم ...
سوال :
می دونید که این چند ضلعی ها از ترکیب چندین Point که دارای X , Y هستش ، تشکیل و رسم می شن.
حالا من این Point ها رو ( یعنی X , Y هاش رو ) از یه فایل می خونم و در آرایه ای ذخیره می کنم...
حال، واسه رسم این Point ها فقط از رویداد Paint از فرم این امکان میسر هستش یا راهکار دیگه ای هم هست؟
اگر راه دیگه ای نیست ، این Point ها رو به رویداد Paint از فرم چطور میشه پاس داد ؟
یعنی به عبارتی Point ها رو در یه تابعی می گیرم، حالا می خوام ازشون استفاده کنم و مثلاً یه چند ضلعی رو تو Form1_Paint رسم کنم.
private void Form1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
// Create pen.
Pen blackPen = new Pen(Color.Black, 3);
// Create points that define polygon.
Point point1 = new Point(30, 50);
Point point2 = new Point(100, 25);
Point point3 = new Point(200, 5);
Point point4 = new Point(250, 50);
Point point5 = new Point(270, 100);
Point point6 = new Point(250, 250);
Point[] curvePoints = {point1, point2, point3, point4, point5, point6};
// Draw polygon to screen.
g.DrawPolygon(blackPen, curvePoints);
// Fill polygon
g.FillPolygon(Brushes.Red, curvePoints);
}
مرسی از راهنمایی دوستان ، شهرام :لبخندساده::چشمک:
کد زیر مربوط میشه به رسم یه چند ضلعی روی فرم ...
سوال :
می دونید که این چند ضلعی ها از ترکیب چندین Point که دارای X , Y هستش ، تشکیل و رسم می شن.
حالا من این Point ها رو ( یعنی X , Y هاش رو ) از یه فایل می خونم و در آرایه ای ذخیره می کنم...
حال، واسه رسم این Point ها فقط از رویداد Paint از فرم این امکان میسر هستش یا راهکار دیگه ای هم هست؟
اگر راه دیگه ای نیست ، این Point ها رو به رویداد Paint از فرم چطور میشه پاس داد ؟
یعنی به عبارتی Point ها رو در یه تابعی می گیرم، حالا می خوام ازشون استفاده کنم و مثلاً یه چند ضلعی رو تو Form1_Paint رسم کنم.
private void Form1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
// Create pen.
Pen blackPen = new Pen(Color.Black, 3);
// Create points that define polygon.
Point point1 = new Point(30, 50);
Point point2 = new Point(100, 25);
Point point3 = new Point(200, 5);
Point point4 = new Point(250, 50);
Point point5 = new Point(270, 100);
Point point6 = new Point(250, 250);
Point[] curvePoints = {point1, point2, point3, point4, point5, point6};
// Draw polygon to screen.
g.DrawPolygon(blackPen, curvePoints);
// Fill polygon
g.FillPolygon(Brushes.Red, curvePoints);
}
مرسی از راهنمایی دوستان ، شهرام :لبخندساده::چشمک: