PDA

View Full Version : Forms in behind



zman123456
چهارشنبه 27 تیر 1386, 09:01 صبح
سلام
می خوام یه فرم Main ی بسازم که یک قسمتش دکمه های فعال سازی فرم ها باشه و یک بخش بزرگی از این فرم Main اختصاص داشته باشه به فرم هایی که می خوان باز بشن.
یعنی کاری می خوام بکونم مثل Tab ولی با دکمه.
یعنی لپ کلام می خوام که فرم های برنامه که باز میشه تو بخش بزرگ فرم Main‌باز بشه.
چکار کنم؟

ghabil
چهارشنبه 27 تیر 1386, 09:28 صبح
مثال MDI خود دلفی رو نگاه کن یا همین MDI رو اینجا جستجو کن .

arash_ebrahimi_nk
چهارشنبه 27 تیر 1386, 16:21 عصر
دو تا راه آسون.
1- میتونی سربرگهای Tab ها رو مخفی کنی و با دکمه مورد نظر برگه مورد نظر رو فعال کنی.
2- میتونی از Frame ها استفاده کنی.

یه راه دیگه هم هست.
3- استفاده از فرم های Dockable احتمالاً میتونی کامپوننتهایی در این زمینه پیدا کنی.

vcldeveloper
پنج شنبه 28 تیر 1386, 09:02 صبح
مناسب ترین راه همون استفاده از frame هست، چون هم سورس مربوط به هر صفحه از صفحات دیگه جدا میشه، هم می تونید این frame را در فرم های دیگه برنامه یا حتی برنامه های دیگه به راحتی استفاده کنید، و همچنین لازم نیست صفحاتی که در حال حاضر نمایش داده نمی شوند را در حافظه لود کنید، فقط frame مربوط به صفحه انتخاب شده را لود می کنید.
همچنین اگر از یک frame در جاهای مختلفی استفاده می کنید، با تغییر در کلاس frame ایی که ایجاد کردید، تمام نمونه های اون frame در فرم های مختلف بطور خودکار تغییر خواهند کرد.

zman123456
پنج شنبه 28 تیر 1386, 10:15 صبح
مرسی از دوستان
من کار با Frame‌ ها رو خوب بلد نیستم.چطوری میتونم یه Frame‌رو تو فرمم Load کنم.میشه یه نمونه برام بگذارید.

vcldeveloper
جمعه 29 تیر 1386, 10:25 صبح
می تونید اول Frame خودتون را بسازید و سپس از تب Standard در Components Pallet گزینه اول که مربوط به Frame است را انتخاب کنید تا یک نمونه از اون Frame در فرم شما ایجاد بشه.
اگر می خواید Frame ها را بصورت دینامیک لود کنید، یک فیلد از نوع TFrame در فرم مربوطه ایجاد کنید، unit مربوط به هر یک از Frame ها را به لیست uses اضافه کنید، و هر زمان که لازم بود Frame ایی را نمایش دهید، آن را از طریق فیلدی که در فرم ایجاد کردید Create کنید و نمایش بدید.