PDA

View Full Version : سوال: چطور میشه در حین اجرای برنامه اندازه ی صفحه نمایش رو بدست اورد و اندازه ی فرم رو تغییر داد



m.h.movahedi
دوشنبه 17 آبان 1389, 22:36 عصر
سلام

چطور میشه در حین اجرای برنامه اندازه ی صفحه نمایش رو بدست اورد و اندازه ی فرم رو تغییر داد(به هر اندازه).

hossin.esm
دوشنبه 17 آبان 1389, 23:58 عصر
System.Drawing.Size s = new Size(Screen.PrimaryScreen.WorkingArea.Width,Screen .PrimaryScreen.WorkingArea.Height);
this.Size = s;
Screen.PrimaryScreen.WorkingArea.Location.Offset(0 ,0);

ایمان مدائنی
سه شنبه 18 آبان 1389, 07:57 صبح
برنامه زير رو دانلود كن
كارش اينه هنگام لود فرم اندازه فعلي صفحه نمايش كار بر رو ميگيره بعد اونو تغيير ميده و وقتي برنامه بسته ميشه به حالت اول برميگردونه
http://www.barnamenevis.org/forum/showpost.php?p=1124710&postcount=27

m.h.movahedi
سه شنبه 18 آبان 1389, 09:37 صبح
System.Drawing.Size s = newSize(Screen.PrimaryScreen.WorkingArea.Width,Scr een.PrimaryScreen.WorkingArea.Height);
this.Size = s;
Screen.PrimaryScreen.WorkingArea.Location.Offset(0 ,0);




با تشکر اگه ممکنه در مورد دستورات بالا توضیح بدید.

m.h.movahedi
سه شنبه 18 آبان 1389, 09:46 صبح
برنامه زير رو دانلود كن
كارش اينه هنگام لود فرم اندازه فعلي صفحه نمايش كار بر رو ميگيره بعد اونو تغيير ميده و وقتي برنامه بسته ميشه به حالت اول برميگردونه
http://www.barnamenevis.org/forum/showpost.php?p=1124710&postcount=27


با تشکر از راهنمایی شما

من فایل ها رو دانلود کردم ولی در موقع نصب فایل قسمت های مختلف همنام هستند و درست نصب نمیشه اگه ممکنه کد اون قسمت رو بزارید ودر موردش توضیح بدید
(من مبتدی هستم-شما لطف کنید تحمل کنید)

ایمان مدائنی
سه شنبه 18 آبان 1389, 09:53 صبح
يك كلاس هست داخلش كه اسمش Resolution اون كلاس هست كه اين كار را انجام ميده
كلاس را از داخلش بكش بيرون و تو پروژه ات اد كن
كار باهاش خيلي راحته
اگه نتونستي بگو برات نمونه درست كنم بزارم

dr_jacky_2005
سه شنبه 18 آبان 1389, 10:47 صبح
سلام

چطور میشه در حین اجرای برنامه اندازه ی صفحه نمایش رو بدست اورد و اندازه ی فرم رو تغییر داد(به هر اندازه).


MessageBox.Show("Monitor Size:" +SystemInformation.PrimaryMonitorSize);

m.h.movahedi
چهارشنبه 19 آبان 1389, 14:29 عصر
يك كلاس هست داخلش كه اسمش Resolution اون كلاس هست كه اين كار را انجام ميده
كلاس را از داخلش بكش بيرون و تو پروژه ات اد كن
كار باهاش خيلي راحته
اگه نتونستي بگو برات نمونه درست كنم بزارم


سلام

من مشکلم حل نشد.ممنون میشم اگه کدش رو بزاری <<با سپاس>>

ایمان مدائنی
چهارشنبه 19 آبان 1389, 14:35 عصر
دوست عزيز يك كلاس كامل است
الان برات ميزارم اينجا

كلاس رو به برنامه اضافه كن
بعد در رويداد لود فرم كد زير را بزار


this.Height = this.Monitor.Bounds.Height.ToString();
this.Width = this.Monitor.Bounds.Width.ToString();
if (int.Parse(this.Width) != 1280)
{
this.IsChange = true;
Resolution.CResolution NewReso = new Resolution.CResolution(1280, 1024);

}

m.h.movahedi
چهارشنبه 19 آبان 1389, 20:00 عصر
دوست عزيز يك كلاس كامل است
الان برات ميزارم اينجا

كلاس رو به برنامه اضافه كن
بعد در رويداد لود فرم كد زير را بزار


this.Height = this.Monitor.Bounds.Height.ToString();
this.Width = this.Monitor.Bounds.Width.ToString();
if (int.Parse(this.Width) != 1280)
{
this.IsChange = true;
Resolution.CResolution NewReso = new Resolution.CResolution(1280, 1024);

}




دوست عزیز از شما متشکرم که وقت گذاشتی و کمک میکنی
من کلاس رو اضافه کردم و دستورات رو وارد.
چند تا خطا داد که من اینجا مینویسم

Error 1 'WindowsApplication1.Form1' does not contain a definition for
Monitor
و
در خط
if (int.Parse(this.Width) != 1280)
خطاهای
Error 3 The best overloaded method match for 'int.Parse(string)' has some invalid arguments
و

Error 4 Argument '1': cannot convert from 'int' to 'string'

در خط

this.IsChange = true;
خطای

Error 5 'WindowsApplication1.Form1' does not contain a definition for 'IsChange'

ایمان مدائنی
پنج شنبه 20 آبان 1389, 21:52 عصر
دوست عزيز برات نمونه درست كردم
اميدوارم مشكلت حل شده بشه
http://www.barnamenevis.org/forum/showpost.php?p=1149911&postcount=617

hassan_kahrizy
جمعه 21 آبان 1389, 13:39 عصر
بسمه تعالی
با سلام
این برنامه را ببینید در هر صورت full خواهد شد حتی اگر کاربر resolution صفحه را تغییر دهد

sorenamusic
جمعه 21 آبان 1389, 14:01 عصر
سلام دوست عزیز
از این طریق میتونی اندازه صفحه نمایشت رو بدست بیاری



int w = Screen.PrimaryScreen.Bounds.Width;
int h = Screen.PrimaryScreen.Bounds.Height;