PDA

View Full Version : سوال: panel روی فرم!!



AftaB66
یک شنبه 17 شهریور 1387, 10:39 صبح
سلام .
من روی فرمم یه panel گذاشتم که میخوام مثل border بالای پنجره های ویندوز عمل کنه .(مثلا با کلیک موس روی اون و حرکت موس ٬ فرم حرکت کنه ) لطفا راهنمایی کنید که باید چه کار کنم .

AftaB66
یک شنبه 17 شهریور 1387, 15:49 عصر
هیچ کس نیست جواب منو بده .:ناراحت:
من نیاز فوری دارم.لطفا راهنمایی کنین.

Mahdi.Kiani
یک شنبه 17 شهریور 1387, 17:43 عصر
سلام
اینجا (http://www.google.com/search?hl=fa&q=Moving+a+captionless+form&lr) را ببینید

--------------
لینک فوق بیشتر در مورد استفاده های WM برای این منظور، راهنماییتون می کنه..
ولی در ساده ترین حالت می تونین با رویداد های panel هم، این عمل را شبیه سازی کنید..
چیزی شبیه به کد زیر:



private void panel1_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Left += e.X - x_pos;
this.Top += e.Y - y_pos;
}
}






private void panel1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
x_pos = e.X;
y_pos = e.Y;
}
}



x_pos و y_pos دو متغیر از نوع int هستند که در سطح کلاس فرم تعریف شدند.