PDA

View Full Version : رفع مشکل تغییر روسولوشن مانیتور



khoshblagh
دوشنبه 30 دی 1387, 08:30 صبح
با سلام

کسی میدونه چطور میتونیم با تغییر روسولوشن مانیتور ابعاد فرم اصلی برنامه متناسب با اون تغییر را تغییر داد. مشکل من این است که با تغییر روسولوشن مقداری از صفحه مانیتور خالی ماند.
با تشکر

Valadi
دوشنبه 30 دی 1387, 10:59 صبح
یک کامپونت در سایت قرار دادم که این کار برایتون انجام میده
بنابر ریزولیشن آبجکت را x,y ش تغییر میده

vcldeveloper
دوشنبه 30 دی 1387, 11:49 صبح
ScaleBy را در سایت جستجو کنید.

khoshblagh
سه شنبه 01 بهمن 1387, 09:39 صبح
با تشکر از جناب آقای کشاورز و Valadi

جناب آقای کشاورز آیا میتوان در 2 متغیر روسولوشن فعلی را ذخیره و با توجه به نیاز برنامه ساخته شده روسولوشن برنامه را تغییر داده و سپس در هنگام خاتمه برنامه آن دو متغیر اولیه که حاوی روسولوشن اولیه سیستم میباشد را به آن برگرداند. در این صورت نیازی به استفاده از روش ScaleBy نمیباشد.

khoshblagh
سه شنبه 01 بهمن 1387, 09:43 صبح
یک کامپونت در سایت قرار دادم که این کار برایتون انجام میده
بنابر ریزولیشن آبجکت را x,y ش تغییر میده

جناب Valadi
با تشکر کامپونت در سایت مشاهده نشد.

vcldeveloper
سه شنبه 01 بهمن 1387, 16:59 عصر
آیا میتوان در 2 متغیر روسولوشن فعلی را ذخیره و با توجه به نیاز برنامه ساخته شده روسولوشن برنامه را تغییر داده و سپس در هنگام خاتمه برنامه آن دو متغیر اولیه که حاوی روسولوشن اولیه سیستم میباشد را به آن برگرداند. در این صورت نیازی به استفاده از روش ScaleBy نمیباشد.
بله میشه، کدش هم در همین سایت موجود هست، اما کاری نیست که قابل توصیه کردن باشه، چون من تا بحال کاربری را ندیدم که از تغییر رزلوشن مانیتورش توسط یک برنامه خوشحال بشه! بخصوص زمانی که کاربر بخواد در طول اجرای برنامه شما، مثلا با برنامه های دیگه هم کار کنه. اگر هم که مانیتور LCD داشته باشه، تغییر رزلوشن موجب افت شدید کیفیت نمایش میشه، چون مانیتورهای LCD فقط روی یک رزلوشن کیفیت خوبی دارند.
بطور کلی، برنامه شما باید خودش را با کاربر وقف بده، نه کاربر خودش را با برنامه شما.

khoshblagh
چهارشنبه 02 بهمن 1387, 07:54 صبح
در صورت امکان آدرس کد مورد اشاره در اعلام نمایید.
با تشکر از راهنمایهای خوب شما و سایر دوستان .

hojjatcroos
چهارشنبه 02 بهمن 1387, 12:20 عصر
چرا این قدر خودت رو زحمت بدی کامپوننت Madcollection رو دانلود کنم بعدا از نصب به Uses ها MadShell رو اضافه کن و بعد کد زیر را بنویس با این کار وقتی کاربر وارد برنامه شما میشه رزولیشن تغییر می کنه و بعد از خروج هم بر می گرده سرجاش.کد رو در OnCreate قرار بده

مثال
DisplayMode (file:///C:/Program%20Files/madCollection/madBasic/Help/Data/DisplayModes.htm#DisplayMode)(800, 600, 32,85).Install;

khoshblagh
چهارشنبه 02 بهمن 1387, 12:33 عصر
کامپوننت Madcollection از کجا دانلود کنم. لطفا راهنمایی کنید.

hojjatcroos
چهارشنبه 02 بهمن 1387, 12:44 عصر
خوب یک سرچی هم بکنید www.madshi.net (http://www.madshi.net)

khoshblagh
چهارشنبه 02 بهمن 1387, 13:04 عصر
در رابطه با مثال ارائه شده DisplayMode (file:///C:/Program%20Files/madCollection/madBasic/Help/Data/DisplayModes.htm#DisplayMode)(800, 600, 32,85).Install
میتونید بگید دو رقم آخر (یعنی 32 و 85 ) مربوطه به چی هستن. ضمنا در این روش اگر فرضا بخواهیم روسولوشن را به 1204*708 تغییر دهیم وضعیت این دو رقم چه میشود.
متشکرم

hojjatcroos
پنج شنبه 03 بهمن 1387, 07:35 صبح
32 که مشخصه یعنی کیفیت 32 بیتی و 85 هم Refrsh rate هستش اگه ابعاد رزولیشن غیر استاندارد باشه این کد کار نمیکنه مثل 800*700