نموذج لإضافة بعض العناصر إلى المشاريع

مرحبا بكم في موقع محمد بشير

الدرس 12 نموذج لإضافة بعض العناصر إلى المشاريع

في هذا الدرس نقوم بكتابة بعض النماذج لكتابة العناصر المختلفة في المشاريع
وذلك باستخدام المشروع الذي قمنا بإنشائه في الدرس السابق
ملحوظة فقط نقوم بالتعرف على كيفية كتابة العناصر مثل القوائم والأزرار ومربع التحرير ومربع الخيارات
كما لا نقو بتطبيق أي أوامر جديدة
ولإضافة العناصر إلى المشروع الذي كتبناه في الدرس السابق
نقوم اليوم باستخدام ملفين فقط هما ملف form1.cs وملف form1.designer.cs
بدون أي تغيير في بقية الملفات والمجلدات الأخرى
أولا ملف form1.cs يحتوي فقط على الأوامر التي نرغب في تنفيذها
أما ملف form1.designer.cs فقوم باستخدامه لكتابة خصائص العناصر المختلفة كاملة
أما الآن فدعونا ننظر في محتوى هذين الملفين وبالله التوفيق


ولتحميل المشروع المستخدم في هذا الدرس الرجاء الضغط على رابط

تحميل مشروع الدرس 12

محتوى ملف form1.cs


//نقوم بإصدار الحزم الرئيسية التي سوف نستخدمها


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
//كتابة اسم المشروع
namespace sample_project
//بداية المشروع
{
//كتابة اسم الإطار
public partial class Form1 : Form
{
//جعل حزمة الإطار الرئيسي في الوضع الإفتراضي
public Form1()
{
InitializeComponent();
}
//حزمة بداية البرنامج ونقوم بكتابة ما نود إظهاره عند بداية تشغيل البرنامج فقط في هذه الحزمة
private void Form1_Load(object sender, EventArgs e)
{
//إضافة بعض العناصر إلى مربع الخيارات
//وذلك باستخدام المتغير المركب وهو متغير يمكن من خلاله التعامل مع أكثر من قيمة واحدة
//وطريقة كتابته في هذا النموذج هي كما موضحة كما يلي
string[] strData = {"arabic","english","japanese"};
//ففي هذا المتغير المركب قمنا بإضافة 3 قيم ونقوم بالفصل بين القيم بعلامة الفاصلة
//إضافة قيم المتغير المركب هذا إلى مربع الخيارات
comboBox1.Items.AddRange(strData);
//تعيين المؤشر على رقم عنصر مربع الخيارات
//ولتعيين أول عنصر في مربع الخيارات نقوم بكتابة الرقم 0
//لأن أول عنصر في مربع الخيارات يبدأ من الرقم 0 يجب أن لا تنسوا هذه النقطة
//ولتعيين أول عنصر تكون كتابتها كما يلي
this.comboBox1.SelectedIndex = 0;
//فمثلا إذا أردنا جعل المؤشر على العنصر الثاني نستبدل الرقم 0 ب1
}
//كتابة حزمة تفعيل واستخدام لوحة المفاتيح
private void comboBox1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
{
//ولتعيين أي مفتاح يمكننا كتابتها كما يلي مع اسم المفتاح المراد استخدامه
//عند الضغط على مفتاح الهروب
if (e.KeyCode == Keys.Escape)
{
//إظهار مربع حوار يحتوي على اسم عنصر مربع الخيارات
MessageBox.Show("عنصر مربع الخيار هو "+ comboBox1.Text);
}
//عند الضغط على مفتاح الإدخال
if (e.KeyCode == Keys.Enter)
{
//إظهار مربع حوار يحتوي على رقم عنصر مربع الخيارات
MessageBox.Show("رقم عنصر مربع الخيارات هو " + comboBox1.SelectedIndex.ToString());
//ولأننا لا نستطيع إضافة القيم الرقمية إلى مربع الحوار مباشرة يجب علينا تغيير القيم من قيمة رقمية إلى قيمة نصية
//ويمكننا فعل ذلك باستخدام خاصية .ToString()
//ويمكننا تغيير أي قيم رقمية إلى قيم نصية باستخدام هذه الخاصية وذلك بإضافتها بعد القيمة الرقمية المراد استبدالها مباشرة
}
}
//حزمة تنفيذ زر button1
private void button1_Click(object sender, EventArgs e)
{
//الإنتقال إلى حزمة الخروج من البرنامج وهي باسم owari
//ولأننها خاصة قمنا بإنشائها بأنفسنا فيمكننا تغيير اسمها وأنشاء أي حزم أخرى مشابهة
//ويتم إنشاء الحزم الخاصة وذلك لإختصار السطور البرمجية ولتسهيل كتابة وتعديل الأكواد بكل يسر وسهولة
owari();
}
//الحزمة الخاصة بتنفيذ عنصر الخروج في القائمة الرئيسية
private void menuEnd_Click(object sender, EventArgs e)
{
//الإنتقال إلى حزمة الخروج من البرنامج وهي باسم owari
//ولأننها خاصة قمنا بإنشائها بأنفسنا فيمكننا تغيير اسمها وأنشاء أي حزم أخرى مشابهة
//ويتم إنشاء الحزم الخاصة وذلك لإختصار السطور البرمجية ولتسهيل كتابة وتعديل الأكواد بكل يسر وسهولة
owari();
//في هذه الحالة أنشأنا حزمة للخروج من البرنامج لأننا نريد الخروج من البرنامج من خلال الضغط على زر الخروج أو من خلال الضغط على عنصر الخروج من خلال القائمة الرئيسية
//فمثلا إذا كان لدينا أوامر نريد استخدامها من عدة أماكن فقط نقوم بإنشاء حزمة خاصة ونسميها بما نشاء
//وعندما نريد طلب وتنفيذ هذه الحزمة فقط يجب علينا استدعائها كما هو موضح في حزمة الخروج هذه
}
//كتابة محتوى حزمة الخروج الرئيسية التي قمنا بإنشائها
void owari()
{
//أمر الخروج من البرنامج
Application.Exit();
//وأيضغا يمكننا استخدام الأوامر
// this.Close();
// this.Dispose();
}
//حزمة الخروج الإفتراضية من البرنامج
//وتختلف هذه الحزمة عن حزمة الخروج الخاصة التي قمنا بإنشائها أنها يتم تنفيذها تلقائيا عند الخروج من البرنامج بأي صورة من الصور
//فمثلا يتم تنفيذها عند الخروج من البرنامج باستخدام مفتاحي القوائم f4 أو عند إغلاق الجهاز
//فمثلا يمكننا استخدامها لحفظ إعدادات البرنامج عند الخروج من البرنامج بصورة تلقائية
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
//يمكننا هنا كتابة ما نود فعله عند الخروج من البرنامج
}
//إغلاق الإطار الرئيسي
}
//إغلاق المشروع
}


محتوى ملف form1.designer.cs


//اسم المشروع
namespace sample_project
{
partial class Form1
{
///


/// Required designer variable.
///

private System.ComponentModel.IContainer components = null;
///
/// Clean up any resources being used.
///

/// true if managed resources should be disposed; otherwise, false.
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
///
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
///

private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
//من بداية الصفحة حتى هذا السطر يتم إنشائها تلقائيا عند إنشاء المشاريع لذا يجبعدم تعديلها
//أولا نقوم بإصدار وكتابة أسماء العناصر التي نرغب في استخدامها وفي هذا النموذج هي كما يلي
//عنصر لابل وهو يستخدم لإظهار الكتابة على الشاشة وهو باسم label1
this.label1 = new System.Windows.Forms.Label();
//عنصر مربع الخيارات وهو باسم combobox1
this.comboBox1 = new System.Windows.Forms.ComboBox();
//عنصر لابل وهو يستخدم لإزهار الكتابة على الشاشةوهو باسم label2
this.label2 = new System.Windows.Forms.Label();
//عنصر مربع التحرير وهو باسم mainText
this.mainText = new System.Windows.Forms.TextBox();
//عنصر زر وهو باسم button1
this.button1 = new System.Windows.Forms.Button();
//عنصر القوائم وهو باسم menuStrip1
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
//إنشاء قائمة باسم filemenu
this.filemenu = new System.Windows.Forms.ToolStripMenuItem();
//إنشاء عنصر قائمة باسم menuend
this.menuEnd = new System.Windows.Forms.ToolStripMenuItem();
//الخطوة الثانية كتابة خصائص العناصر المختلفة وذلك باستخدام أسماء العناصر المذكورة أعلاه
//
// خصائص عنصر label1
//
//تحديد حجم العنصر تلقائيا
this.label1.AutoSize = true;
//تعيين حيز العنصر على الشاشة
this.label1.Location = new System.Drawing.Point(18, 23);
//تتسمية العنصر
this.label1.Name = "label1";
//تعيين حجم العنصر
this.label1.Size = new System.Drawing.Size(66, 12);
//الرقم التسلسلي للعنصر وذلك لتسهيل الحركة بين العناصر المختلفة باستخدام مفتاح الحقول
this.label1.TabIndex = 0;
//كتابة ما يراد إظهارهفي العنصر
this.label1.Text = "اختيار اللغة";
//
//الخاصاءص الخاصة بعنصر comboBox1
//
//تعيين نوع العنصر ولمعرفة المزيد الرجاء مراجعة الدرس الخاص بمربع الخيارات
this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
//تعيين حجم ونوع الحرف
this.comboBox1.Font = new System.Drawing.Font("Calibri", 12F, System.Drawing.FontStyle.Bold);
//تفعيل خاصية تنسيق العناصر
this.comboBox1.FormattingEnabled = true;
//تعيين حيز العنصر على الشاشة
this.comboBox1.Location = new System.Drawing.Point(20, 47);
//تعيين اسم العنصر
this.comboBox1.Name = "comboBox1";
//تعيين حجم العنصر
this.comboBox1.Size = new System.Drawing.Size(187, 20);
//تعيين الرقم التسلسلي ولإزهار كتابة عنصر الابل السابق عند هذا العنصر يجب جعل رقم هذا العنصر مشابه للعنصر السابق أو جعل رقمه هو يلي رقم االعنصر لسابق
this.comboBox1.TabIndex = 0;
//تفعيل لوحو المفاتيح عند استخدام مربع الخيارات
this.comboBox1.PreviewKeyDown += new System.Windows.Forms.PreviewKeyDownEventHandler(this.comboBox1_PreviewKeyDown);
//
//الخاصائص الخاصة بعنصر label2
//
//وهي مشابهة لخصائص عنصر لابل 1 ولمعرفة المزيد الرجاء مراجعة ملاحظات عنصر لابل 1
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(18, 23);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(66, 12);
this.label2.TabIndex = 1;
this.label2.Text = "نموذج لمربع التحرير";
//
//خصائص عنصر مربع التحرير mainText
//
//تعيين حيز العنصر على الشاشة
this.mainText.Location = new System.Drawing.Point(0, 0);
//تفعيل خاصية تعدد الأسطر
this.mainText.Multiline = true;
//تعطيل خاصية خاص بالقراءة فقط
this.mainText.ReadOnly = false;
//تعطيل خاصية تعيين السطور تلقائيا
this.mainText.WordWrap = false;
//تعيين اسم العنصر
this.mainText.Name = "mainText";
//تعيين حجم العنصر
this.mainText.Size = new System.Drawing.Size(640, 480);
//تعيين الرقم التسلسلي للعنصر
this.mainText.TabIndex = 1;
//تعيين محتوى العنصر وفي هذه الحالةيكون فارغا
this.mainText.Text = "";
//
//الخصائص الخاصة بعنصر button1
//
//والخصائص الخاصة بالأزرار هي مشابهة لما تعلمناه في الدروس السابقة ولمعرفة المزيد الرجاء مراجعتها
this.button1.Location = new System.Drawing.Point(183, 259);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(77, 26);
this.button1.TabIndex = 2;
this.button1.Text = "الخروج من البرنامج";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
//خصائص عنصر menuStrip1
// وهذا العنصر يعتبر كقاعدة لإنشاء القوائم المختلفة ولا يظهر لنا على الشاشة
//أولا نقوم بإضافة القوائم الرئيسية التي نريد إنشائها وفي هذا النموذج أنشأنا قائمة رئيسية واحدةوهي باسم fileMenu
//وإضافة أكثر من قائمة نقوم بالفصل بينها بعلامة الفاصلة , ما عدا العنصر الأخير فلا تكتب بعده علامة الفاصلة
//وفي هذه الحالة لدينا قائمة واحدة لذا لا نحتاج إلى كتابة علامة الفاصلة
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
filemenu
});
//تعيين الحايز على الشاشة
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
//تعيين اسم القائمة
this.menuStrip1.Name = "menuStrip1";
//تعيين حجم القائمة
this.menuStrip1.Size = new System.Drawing.Size(512, 24);
//تعيين الرقم المتسلسل
this.menuStrip1.TabIndex = 0;
//تسمية القائمة
this.menuStrip1.Text = "menuStrip1";
//
// إضافة قائمة رئيسية للقوائم وهي باسم filemenu
//
//ونقوم بإضافة العناصر الفرعية لهذه القوائم الرئيسية بنفس طريقة إضافة القوائم الرئيسية كما هو موضح أعلاه
//وفي هذا المثال لدينا عنصر واحد وهو باسم menuend
this.filemenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.menuEnd
});
//تعيين اسم القائمة
this.filemenu.Name = "filemenu";
//تعيين حجم القائمة
this.filemenu.Size = new System.Drawing.Size(70, 20);
//اسم القائمة الذي يظهر على الشاشة
this.filemenu.Text = "ملف";
//
//خصائص القائمة الفرعية وهي باسم menuEnd
//
//تعيين اسم العنصر
this.menuEnd.Name = "menuEnd";
//تعيين حجم العنصر
this.menuEnd.Size = new System.Drawing.Size(228, 22);
//الاسم الذي يظهر لنا على الشاشة
this.menuEnd.Text = "الخروج من البرنامج";
//تسمية الحزم عند تنفيذ العنصر
this.menuEnd.Click += new System.EventHandler(this.menuEnd_Click);
//وفي الخطوة الثالثة وبعد كتابة جميع خصائص العناصر المختلفة نقوم بإضافة هذه العناصر إلى الأطار العام
//وقبل هذا نقوم بتعيين حيز البرنامج بالكامل على الشاشة
this.ClientSize = new System.Drawing.Size(640, 480);
//يتم إضافة كل عنصر على حدى ما عدا القوائم فقط نقوم بإضافة القاعدة الرئيسية للقوائم
//وأي عنصر لا نقوم بإضافته لا يظهر لنا في الشاشة حتى ولو تم تنفيذ البرنامج بسلام
//لاإضافة العناصر تكون كما يلي
this.Controls.Add(this.button1);
this.Controls.Add(this.label1);
this.Controls.Add(this.comboBox1);
this.Controls.Add(this.label2);
this.Controls.Add(this.mainText);
this.Controls.Add(this.menuStrip1);
//كتابة اسم البرنامج الذي نرغب في إظهاره على الشاشة
this.Text = "Form1";
//كتابة حزمة الخروج من البرنامج
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
//كتابة حزمة بداية البرنامج
this.Load += new System.EventHandler(this.Form1_Load);
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
//وفي الخطوة الرابعة والأخيرة في هذا الملف نقوم بربط العناصر المختلفة مع الإطار المستخدم
//وطريقة كتابتها تكون كما يلي
private System.Windows.Forms.Label label1;
private System.Windows.Forms.ComboBox comboBox1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox mainText;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem filemenu;
private System.Windows.Forms.ToolStripMenuItem menuEnd;
}
}
وإذا كان لديكم أي سؤال فلا تترددوا في الإتصال بي
وأسأل الله لي ولكم والتوفيق والسداد