PDA

View Full Version : بزرگنمايي برنامه 800*600 به صورت فول اسکرين



h_mohamadi
یک شنبه 08 بهمن 1391, 09:47 صبح
سلام خدمت دوستان و اساتيد محترم
من يک برنامه نوشتم که فرم هاي آن 800*600 بوده و من مي خواهم اين برنامه را به صورت تنظيم کنم که اگر رزوليشن کامپيوتر 1024 و يا ديگر رزوليشن ها بود برنامه به صورت فول اسکرين شود خواهش مي کنم دوستان راهنمايي بفرمايند

حمید محمودی
یک شنبه 08 بهمن 1391, 11:18 صبح
من يک برنامه نوشتم که فرم هاي آن 800*600 بوده و من مي خواهم اين برنامه را به صورت تنظيم کنم که اگر رزوليشن کامپيوتر 1024 و يا ديگر رزوليشن ها بود برنامه به صورت فول اسکرين شود خواهش مي کنم دوستان راهنمايي بفرمايند
خب شما میتونید WindowState رو wsMaximized قرار بدید؛ این که چیز خاصی نداره. اگر هم منظور شما اینه که جای کنترل ها و ... در رزولوشن های مختلف تغییری نکنه یا فرمتون بهم نریزه؛ این دیگه بستگی به طراحی شما داره؛ اگر به نحو صحیح از Anchor استفاده کنید، و یا حتی کنترلهایی که استفاده کردین رو به نحوی درست در فرمتون (با توجه به این هدفی که دارین) قرار داده باشین، به مشکل خاصی بر نمیخورین.
اگر هم منظور شما چیز دیگه ای بوده، بیشتر توضیح بدید.

h_mohamadi
یک شنبه 08 بهمن 1391, 11:39 صبح
خب شما میتونید WindowState رو wsMaximized قرار بدید؛ این که چیز خاصی نداره. اگر هم منظور شما اینه که جای کنترل ها و ... در رزولوشن های مختلف تغییری نکنه یا فرمتون بهم نریزه؛ این دیگه بستگی به طراحی شما داره؛ اگر به نحو صحیح از Anchor استفاده کنید، و یا حتی کنترلهایی که استفاده کردین رو به نحوی درست در فرمتون (با توجه به این هدفی که دارین) قرار داده باشین، به مشکل خاصی بر نمیخورین.
اگر هم منظور شما چیز دیگه ای بوده، بیشتر توضیح بدید.

مي شود يکم بيشتر راجع به Anchor توضيح دهيد

حمید محمودی
یک شنبه 08 بهمن 1391, 12:22 عصر
Anchor در واقع برای چسبیدن و/یا شکسته شدن یک کنترل به سمت(هایی) از Container فعلی ما هست؛ Anchors شامل [akLeft,akTop,akRight,akBottom] هست؛ فرض کنید یک Button دارید و روی فرم قرار داده شده؛ در حالت پیش فرض، akLeft,akTop اون فعال هست, یعنی این کنترل از سمت چپ و از سمت بالای فرم، ثابت هست؛ چون پنجرهء فرم برای افزایش سایزش، به طرف پایین و راست صفحه نمایش ریسایز داده میشه، بنابراین این کنترل Button با تغییر سایز پنجره از مختصات فعلی حرکت نخواهد کرد/تغییر اندازه نخواهد داد؛akRight,akBottom رو هم اگر (در کنار akLeft,akTop) فعال بکنید، همون اتفاق ثابت موندن اون کنترل با تغییر سایزی که از طرف پایین و راست داده میشه، انجام خواهد شد. در نتیجه، چون کنترل از بالا و از سمت چپ ثابت هست و مختصات انتهایی کنترل به سمت راست و پایین ثابت شده، با تغییر اندازه فرم، اندازه کنترل هم به همون نسبت بزرگ خواهد شد؛ و حالت های دیگه ای که میشه باهاش در نظر گرفت.


akTop: The design-time distance between the top edge of the control's parent and the top edge of the control is maintained constant
akLeft: The design-time distance between the left edge of the control's parent and the left edge of the control is maintained constant
akRight: The design-time distance between the right edge of the control's parent and the right edge of the control is maintained constant
akBottom: The design-time distance between the bottom edge of the control's parent and the bottom edge of the control is maintained constant

پیشنهاد میکنم یکبار باهاش کار کنید، تا راحتر کاری که انجام میده رو درک کنید.

موفق باشید

h_mohamadi
یک شنبه 08 بهمن 1391, 17:56 عصر
براي استرين گريدهايم چيکار کنم؟؟؟

حمید محمودی
یک شنبه 08 بهمن 1391, 19:34 عصر
براي استرين گريدهايم چيکار کنم؟؟؟

یعنی چی؟ خب StringGrid هم Anchor داره و میتونید تنظیم کنید در زمان طراحی

h_mohamadi
دوشنبه 09 بهمن 1391, 09:39 صبح
یعنی چی؟ خب StringGrid هم Anchor داره و میتونید تنظیم کنید در زمان طراحی
ممنونم از پاسخ شما
من مي خواستم بدانم دستوري هست که بتوان با دادن آن بگويم فرم اورجينال 800*600 من به نسبت رزوليشن بزرگ شود؟؟
غير از

ScaleBy(m,d);
ضمنا من وقتي از دستور فوق استفاده مي کنم رديف و ستون هاي استرين گريد من به نسبت بزرگ نمي شود.منظورم از استرين گرد اين است