PDA

View Full Version : MDI-MdiListنام گذاری فرمهای فرزندولیست پنجره های فرزند



piroozman
پنج شنبه 12 مهر 1386, 04:16 صبح
1-چگونه می توان با هر بار باز کردن یک فرم فرزند در یک فرم مادر MDI برای هر فرم یک نام اختصاص داد؟ مانند باز کردن اسناد در برنامهword که هر سند با کلمه Document شروع شده و در ادامه آن از اعداد استفاده شده است:Document1; Document2;…; Document . . .

2-خصوصیتMdiList از کلاس MenuItemt مشخص می کند که آیا MenuItemt یک لیستی از پنجره های باز را نمایش می دهد یا خیر. چگونه می توان این لیست را در آخر یک منو(مانند منویWindows که در اکثر برنامه های وجود داردا) نمایش داد؟

PC2st
پنج شنبه 12 مهر 1386, 05:51 صبح
1. میتونید از طریق خاصیت MdiParent به فرم مادر (Mdi) دسترسی داشته باشید:


this.MdiParent.Text += "Document1";

کد فوق متن Document1 رو به عنوان فرم مادر (MDI) اضافه میکنه.

2. http://www.codeproject.com/csharp/mdiformstutorial.asp

piroozman
جمعه 13 مهر 1386, 02:48 صبح
شما در مورد اضافه کردن لیست پنجره های فرزند به یکی از منوهای فرم والد نفرموید

1. میتونید از طریق خاصیت MdiParent به فرم مادر (Mdi) دسترسی داشته باشید:


this.MdiParent.Text += "Document1";

کد فوق متن Document1 رو به عنوان فرم مادر (MDI) اضافه میکنه.

2. http://www.codeproject.com/csharp/mdiformstutorial.asp

PC2st
جمعه 13 مهر 1386, 02:51 صبح
شما در مورد اضافه کردن لیست پنجره های فرزند به یکی از منوهای فرم والد نفرموید
لینکی که داده بودم یک مثال در همین زمینه بود. نمونه مثالش رو دانلود کرده و اجرا کنید، لیست پنجره های فرزند به منوی Window اضافه میشود.

piroozman
جمعه 13 مهر 1386, 23:55 عصر
لینکی که داده بودم یک مثال در همین زمینه بود. نمونه مثالش رو دانلود کرده و اجرا کنید، لیست پنجره های فرزند به منوی Window اضافه میشود.
فایلی که شما معرفی کرده اید را قبلا دانلود کرده بودم اما نتونستم کمکی بگیرم. میتونید بیشتر کمکم کنید؟:گریه:

Mahdi.Kiani
شنبه 14 مهر 1386, 09:51 صبح
فایلی که شما معرفی کرده اید را قبلا دانلود کرده بودم اما نتونستم کمکی بگیرم. میتونید بیشتر کمکم کنید؟:گریه:

لینکی که PC2st دادن یه مقداری قدیمیه و از mainMenu استفاده شده نه menustrip
خاصیت mdiList در مورد mainMenu وجود داره ور در 2005 که به جای mainMenu از menuStrip استفاده میکنین خاصیت فوق تبدیل به خاصیتی به نام MdiWindowlistItem شده و محل قرار گیری این آیتم هم در بخش property های خود menuStrip هست نه در بخش property های toolstripmenuItem بر خلاف اینکه خاصیت mdiList در خواص menuItem بود نه mainMenu

پس برای استفاده کردن از این خاصیت باید property به نام MdiWindowListItem را در خواص menuStrip تنظیم کنید
مقادیر این peroperty به صورت داینامیک در پنجره خواص تغییر میکنند و مقادیر ان در واقع لیستی از آیتم هایی هستند که به منو اضافه کردین
پس کافیه این این خاصیت را برای هر toolstripmenuItem ی که میخواین ست کنیند
فرض کنید توی آیتم هاتون گزینه File و edit و ... و Window را دارین
کافیه خاصیت MdiWindowListItem از menuStrip را بربرا با window بذارین
بقیه کار ها را خود ش انجام میده
هنگامی که فرم های child اضافه میشوند متن فرم به عنوان یک آیتم به آیتمی که مشخص کردین (در اینجا window) اضافه میشه
اگه تعداد child ها از 9 بیشتر بشه گزینه ای به عنوان MoreWindows در آخر منویی که اضافه کردین (window) اضافه میشه که اگه روش کلیلک کنین فرمی حاوی تمامی childForm ها باز شده که میتونین فرم دلخواه را انتخاب کنین

نکته :
اگه توی پنجره AddNewItem خوب بگردی آیتمی هست به عنوان MdiParent که یه فرم هست با امکانات متداولی برای اعمال MDI و اون 2 تا کارب هم که شما میخواین داخلش انجام گرته
موفق باشید

piroozman
شنبه 14 مهر 1386, 10:53 صبح
[quote=night_fall2;404480]لینکی که PC2st دادن یه مقداری قدیمیه و از mainMenu استفاده شده نه menustrip
خیلی ممنونم. من به لطف خدا بعد از سحر تونستم این خصیصه رو پیدا کنم.

ربنا لاتزغ قلوبنا بعد اذ هدیتنا وهب لنا من لدنک رحمه انک انت الوهاب

piroozman
شنبه 14 مهر 1386, 10:54 صبح
[quote=night_fall2;404480]لینکی که PC2st دادن یه مقداری قدیمیه و از mainMenu استفاده شده نه menustrip
خیلی ممنونم. من به لطف خدا بعد از سحر تونستم این خصیصه رو پیدا کنم.

ربنا لاتزغ قلوبنا بعد اذ هدیتنا وهب لنا من لدنک رحمه انک انت الوهاب