MDIChild ב VB.NET - לאן הוא נעלם?

fazer

New member
MDIChild ב VB.NET - לאן הוא נעלם?

איך להפוך טופס לקונטיינר מצאתי - אבל לאן נעלם הפרופרטי MDIChild?
Fazer
 

gilad g

New member
אני לא ממש זוכר את ה-VB שלי ../images/Emo9.gif

תזכיר לי מה MDIChild עושה
 

Zeliran

New member
אולי...

אני לא כל כך מתמצא ב VB (נו טוב.. ממש לא..) אבל ב C# לדוגמא, כדי ליצור איזה טופס ל MDIChild, אפשר לעשות את זה דרך הקוד.. ולא פרופרטי.. למשל אם בטופס של ה MDIParent יש איזשהו כפתור, אז אתה יכול ליצור ב Event של הלחיצה, שהוא יטען את הטופס המבוקש בתור MDIChild בתוך הטופס MDIParent לדוגמה (ב C#..)
ChildForm newMDIChild = new ChildForm(); newMDIChild.MdiParent = this; newMDIChild.Show();​
כאן מה שקורה זה שמגדירים לטופס ChildForm , שה parent שלו יהיה הטופס הנוכחי..
 

Zeliran

New member
../images/Emo9.gif אבל בכל זאת..

לא נראה לי שלהסבר הזה מגיע להיות ב FAQ...
 

Zeliran

New member
אז נשפץ אותו קצת..

האמתי שכבר כתבתי אותו.. אבל עזבתי את המחשב לרגע.. והכל הושמד לצערי הרב.., נו טוב.. שיהיה.. יצירת טפסי MDI טפסי MDI מתחלקים לשני סוגים 1. MDIParent 2. MDIChild הטופס מסוג MDIParent הינו טופס ה"אב" שבתוכו נפתחים טפסים חדשים מסוג MDIChild (השמות די מסגירים את עצמם למען האמת..) אז קודם כל צריך ליצור טופס שהוא MDI Container שהוא בעצם יהיה ה MDIParent כדי לעשות זאת, יש להוסיף לפרוייקט טופס ריק חדש, אנחנו נקרא לו frmParent לאחר שיצרנו טופס חדש, נפתח את חלון הפרופרטיס (properties) ונגדיר את השדה IsMdiContainer כtrue כעת הטופס הזה יכול להכיל בתוכו טפסים.. לצורך ההדגמה, נוסיף ל frmParent גם MenuBar מתוך ה toolBox ונוסיף לתפריט את: New-->Load Child Form Windows **טיפ קטן** - לאחר שהוספת את Windows לתפריט, אפשר לבחור בפרופרטיס שלו MdiList= true, עכשיו ברשימה שלו יוצגו כל ה childForm שהטופס frmParent מציג בכל זמן נתון... יהיה אפשר דרכו גם לבחור על איזה טופס להתמקד טוב.. אז עכשיו הגיע הזמן ליצור את ה MDIChild לשם כך ניצור טופס חדש, לצורך הדוגמה, נקרא לו frmChild בחזרה לטופס frmParent נצור עכשיו ארוע לחיצה לכפתור Load Child Form ונשים בו את הקוד שצריך על מנת להציג את הטופס frmChild הקוד המתאים (לדוגמה שלנו..לשמות שאנו נתנו לטפסים..) תהיה:
frmChild child = new frmChild(); child.MDIParent = this; child.Show(); וזהו! עכשיו כשתריצו את התוכנית, ותלחצו על הכפתור, יפתח לכם הטופס frmChild בתוך הטופס frmParent שימו לב: כל טופס MDIParent יכול להכיל בתוכו אינסוף טפסים.. אפילו מאותו הסוג..​
 
למעלה