تقييم الموضوع :
- 0 أصوات - بمعدل 0
- 1
- 2
- 3
- 4
- 5
معلومة ::: IsMdiContainer
|
المشاركات : 2,523
المواضيع 707
الإنتساب : Sep 2012
السمعة :
48
الشكر: 91
تم شكره 1104 مرات في 297 مشاركات
كاتب الموضوع : BADRMEDIA
IsMdiContainer :
إلى المبتدئين فى الدوت نت وإلى من انتقل من VB 0 – 6
كيف نجعل للمشروع نافذة رئيسية ونضمن بداخلها نوافذ أخري ونتحكم فيها
- نفتح مشروع جديد - Windows Form
- نجد أن هناك فورم رئيسية تنشأ تلقائى اسمها Form1
- ننشأ أيضا فورم أخري ويتم اضافتها وتأخذ اسم تلقائى Form2
- نذهب إلى قائمة الخصائص لهذا النافذة ونجعلها نافذة حاضنة عن طريق الخاصية IsMdiContainer
بحيث نجعل القيمة لها True
- من قائمة الأدوات ToolBox نقوم بارفاق الأداة MenuStrip على الفورم Form1
- بعد اضافتها نجد أن أداة القائمة هذه أصبحت فى اعلى الفورم Form1 وسهلة التحرير لتكوين القوائم
ونجد أنها جاهزة لانشاءأول قائمة لك – فى الخلية النشطة فيها ننشأ أول قائمة لنا ونسميها File وسنجد أن المؤشر ينتقل لأسفل فنقوم بانشاء هذه العناصر
My Child
Close All
ArrangeIcons
Cascade
TileHorizontal
TileVertical
- بعد أن أنشأنا العناصر نختار أول عنصر وهو
My Child ونضغط عليه مرتين بحيث يظهر محرر الكود ويولد الحدث الخاص بالضغط على العنصر
ونكتب له هذا الكود
كود :
Private Sub MyChildToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyChildToolStripMenuItem.Click
Dim frm As New Form2
frm.MdiParent = Me
frm.Show()
End Sub
وظيفة هذا العنصر – هو أنه بالضغط عليه يقوم بتكوين فورم جديدة من Form2 ويقوم باظهارها
كود :
Dim frm As New Form2
هنا عرفنا متغير من نوع Form2 اسميناه frm
هنا أسندنا إلى الخاصية MdiParent الخاصة بالمتغير frm
القيمة Form1 والتى كتبنا بالنيابة عنها كلمة Me لأننا نقف بداخل Form1
ومعنى ذلك أننا أفهمنا المتغير frm وهو نسخة من Form2 أن الفورم التى ستكون حاضنة لها هى Form1 أى هى ابن للأب Form1
هنا قمنا باظهار الفورم
المشاركات : 2,523
المواضيع 707
الإنتساب : Sep 2012
السمعة :
48
الشكر: 91
تم شكره 1104 مرات في 297 مشاركات
نختار العنصر Close All ونضغط عليه مرتين بحيث يظهر محرر الكود ويولد الحدث الخاص بالضغط على العنصر
ونكتب له هذا الكود
كود :
Private Sub CloseAllDToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CloseAllDToolStripMenuItem.Click
Dim frm As Form
For Each frm In Me.MdiChildren
frm.Close()
Next frm
End Sub
هذه هذا العنصر غلق جميع النوافذ المفتوحة بداخل Form1
كود :
Dim frm As New Form
هنا عرفنا متغير من نوع Form اسميناه frm
كود :
For Each frm In Me.MdiChildren
frm.Close()
Next frm
استخدمنا الحقلة For Each بحيث تقوم بالبحث عن أى فورم داخل الفورم Form وتكون هذه
الفورم ابن للفورم Form1
واذا وجد هذه الفورم يقوم باغلاقها
لو أردنا أن يقوم باغلاق النوافذة المتولدة من Form2 فقط – كنا نعرف المتغير على أساس أنه نسخة من Form2 وليس Form عامة
كود :
Dim frm As New Form2
-----------------------------
- نختار العنصر ArrangeIcons ونضغط عليه مرتين بحيث يظهر محرر الكود ويولد الحدث الخاص بالضغط على العنصر
ونكتب له هذا الكود
كود :
Private Sub ArrangeIconsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ArrangeIconsToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.ArrangeIcons)
End Sub
نقوم هنا بعمل ترتيب للفورم الأبناء داخل الفورم الأب عن طريق الوصل بالخاصية LayoutMdi للفورم الأب أن نحدد طريقة ترتيب الفورم الأبناء بداخله وهى أربع طرق كالتالى
ArrangeIcons
Cascade
TileHorizontal
TileVertical
-----------------------------
الطريقة الثانية Cascade
- نختار العنصر Cascade ونضغط عليه مرتين بحيث يظهر محرر الكود ويولد الحدث الخاص بالضغط على العنصر
ونكتب له هذا الكود
كود :
Private Sub CascadeToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CascadeToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.Cascade)
End Sub
-----------------------------
الطريقة الثالثة TileHorizontal
- نختار العنصر TileHorizontal ونضغط عليه مرتين بحيث يظهر محرر الكود ويولد الحدث الخاص بالضغط على العنصر
ونكتب له هذا الكود
كود :
Private Sub TileHorizontalToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TileHorizontalToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.TileHorizontal)
End Sub
-----------------------------
الطريقة الرابعة TileVertical
- نختار العنصر TileVerticalونضغط عليه مرتين بحيث يظهر محرر الكود ويولد الحدث الخاص بالضغط على العنصر
ونكتب له هذا الكود
كود :
Private Sub TileVerticalToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TileVerticalToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.TileVertical)
End Sub
|
المواضيع المحتمل أن تكون متشابهة . |
الموضوع : |
الكاتب |
الردود : |
المشاهدات : |
آخر رد |
|
معلومة :: تعلم كيف تحفظ صورة في My.Settings بدون الإحتياج إلى مسارها! |
أسامة أحمد |
13 |
6,261 |
15-04-24, 01:13 AM
آخر رد: أبو جودة
|
|
معلومة ::: ListBox |
Blue Sky |
14 |
22,062 |
14-11-16, 11:32 PM
آخر رد: فارس جراح
|
|
معلومة مهمه فى المصفوفات |
ali.alfoly |
2 |
3,734 |
30-08-13, 02:25 AM
آخر رد: ali.alfoly
|
|
من المنتدى القديم - معلومة ::: ProgressBar ( للاخ BADRMEDIA ) |
المبرمج علي نوري |
2 |
3,832 |
23-08-13, 11:17 PM
آخر رد: nin9e
|
|
من المنتدى القديم - معلومة ::: CheckBox ( للاخ BADRMEDIA ) |
المبرمج علي نوري |
1 |
2,920 |
30-11-12, 05:54 PM
آخر رد: مبرمج أوتار
|
|
معلومة :: الحل لمشكلة الخطأ في الكود For Each i As Button In Me.Controls |
Aly El-Haddad |
2 |
3,569 |
10-11-12, 09:15 PM
آخر رد: Mr. DotNet
|
|
معلومة : Partial Class |
RaggiTech |
1 |
2,670 |
06-10-12, 11:03 PM
آخر رد: RaggiTech
|
|
معلومة : TryCast مهمة |
RaggiTech |
0 |
2,717 |
06-10-12, 11:02 PM
آخر رد: RaggiTech
|
|
معلومة : XML Comments مهمة |
RaggiTech |
1 |
2,424 |
06-10-12, 11:01 PM
آخر رد: RaggiTech
|
|
معلومة - الاستثناءات ( Exceptions ) |
RaggiTech |
0 |
2,456 |
06-10-12, 11:00 PM
آخر رد: RaggiTech
|
يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم