PDA

View Full Version : سوال: تغییر سایز فرم به ازای تغییر Resolution



tanafos.ir
جمعه 18 اردیبهشت 1388, 22:55 عصر
سلام به همه دوستان
من فرمی را در #C با سایز 600*800 طراحی کردم و می خوام همیشه فرمم fullScreen باشد یعنی اگر کاربری Resolution 1204*800 را انتخاب کرد باز فرم به صورت تمام صفحه نمایش داده شود.
چگونه این کار را انجام دهم؟

tanafos.ir
دوشنبه 04 خرداد 1388, 23:10 عصر
ü به نظرم انجام این موارد بتواند کمک کند :
الف ) برای هم خوانی کنترل ها با تغییر سایز ، از لحاظ جایگاه کنترل و نه سایز آن ، با Anchor می توان کنترل نمود ( جایگاه کنترل ها را )
ب ) برای کنترل سایز فرم ها هم می توان غیر از روش بالا ، سایز صفحه را هم بخوانیم و در فرم لحاظ کنیم ( تحت عنوان طول و عرض فرم )
روش خواندن Resolution صفحه توسط API های ویندوز است :
API چیست ؟
توابع آماده ، حاضر در DLL های ویندوز
ما با این توابع آماده می توانیم خروجی این توابع را گرفته و استفاده کنیم .
برای کار با این توابع 3 چیز مهم است :
الف ) می بایست DLL مورد نظر ویندوز را بدانیم ( برای اینکه در پروژه فراخوانی کنیم )
ب ) نام تابع مورد نظر را در این DLL بدانیم ( برای اینکه در محیط کد آن را معرفی کنیم )
پ ) نوع ورودیها و خروجی آن را بدانیم .

zoofa
پنج شنبه 07 خرداد 1388, 16:29 عصر
سلام دوست عزیز
من منظور شما را به درستی متوجه نشدم
اگر می خواهید که با باز شدن فرم، فرم تمام صفحه را بگیرد خاصیت FormBorderStyle فرمتان را برابر None بگذارید و خاصیت WindowState را برابر Maximized قرار بدهید
اگر در انجام دادن عمل فوق مشکلی ندارید و مشکل شما به هم ریختن کنترلهای درون فرم به هنگام تغییر ریزولوشن می باشد یکی از راههای خوب برای رفع این مشکل سایز دادن کنترلهای درون فرم بر اساس فرم است.
مثلاً اگر می خواهید textbox1 نصف فرم را همیشه بگیرد از این کد استفاده کنید در فرم لود



textbox1.width = this.width;
textbox1.Height= this.Height * ( 50 / 100);