PDA

View Full Version : سوال: کشیدن خط از دو نقطه



sysman_20
جمعه 05 تیر 1388, 14:38 عصر
چگونه میتوانم بین دو نقطه در فرم یک خط رسم کنم و نمایش دهم؟

amironline
جمعه 05 تیر 1388, 14:55 عصر
Drawing a Line on a Form (http://msdn.microsoft.com/en-us/library/aa287522(VS.71).aspx)

system32
جمعه 05 تیر 1388, 15:02 عصر
از کد زیر استفاده کن:




Graphics graph;
graph = Form1.ActiveForm.CreateGraphics();
Pen pen1 = new Pen(Color.Blue, 3);
graph.DrawLine(pen1, 300, 200, 100, 100);

sysman_20
جمعه 27 اسفند 1389, 13:35 عصر
اما این خط ها ثابت نیستند یعنی به refresh کردن فرم یا حزکت یک شیی یا فرم دیگه روی اون پاک میشوند. برای رسم خط های ثابت باید چیکار کنم؟

sysman_20
یک شنبه 18 اردیبهشت 1390, 17:04 عصر
کسی نیست جواب بده؟

haghft
یک شنبه 18 اردیبهشت 1390, 17:20 عصر
استفاده از نامعتبرسازی چاره مشکلتونه:
bool check;

private void button1_Click(object sender, EventArgs e)
{
check = true;
Invalidate();
}

private void Form1_Paint(object sender, PaintEventArgs e)
{
if (check)
{
Graphics g = e.Graphics;
g.DrawLine(Pens.Red, 10, 10, 20, 20);
g.Dispose();
}
}
در ضمن با قرار دادن این کد بعد از Graphics g = e.Graphics; میتوانید کیفیت تصویر را بالابرده و از بره خوردن جلوگیری کنید:
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality ;

Saeed.Masoumi
دوشنبه 19 اردیبهشت 1390, 14:49 عصر
توی Override OnPainting هم می شه کدتون رو اضافه کنید.