بســم الله الـرحمــن الرحيــم
اليوم سنتطرق الى موضوع جديد وهو الملفات النصية وكيفية التعامل معها
البرنامج بسيط ولا يتطلب الكثير
اولا نبدا مشروع جديد
ونضع فيه مكون textBox وmenuStrip
نغيير الخاصية multiline الى True للمكون textbox
ثم نتقل للقائمة menuStrip
ونقوم بانجاز التالي
قائمة ملف تحتوي
جديد
حفظ
حفظ باسم
-
خروج
اما القائمة تحرير فتحتوي على
تحديد الكل
قص
نسخ
لصق
قائمة مساعدة
حول البرنامج
ونسقه كما في الصورة
بعد الانتهاء من ذلك الان علينا اضافة
System.IO
الى القسم Uses
نقوم بعد ذلك الى الانتفال الى القائم جديد وننقر نقر مزدوج ليفتح محرر الكود ونكتب
textBox1.Clear
ثم نقوم ببرمجة قائمة الخروج بنفس الطريقة
ونكتب الكود التالي
Application.Exit;
ثم نقوم باضافة مكون saveFileDialog
ونصرح بالمتغيير في القسم protected كما يلي
وسنقوم بفضل هذا المتغيير بالكتابة في الملفات النصية
protected method Dispose(disposing: Boolean); override; var stmw :StreamWriter;
ننتقل الى حدث الضغط حفظ باسم في القائمة
ونكتب الكود
saveFileDialog1.ShowDialog(); stmw := new StreamWriter(saveFileDialog1.FileName); stmw.WriteLine(textBox1.Text); save := true; stmw.Close();
يقصد بهذا الكود
1 فتح نافذة الحفظ
2 انشاء كائن من الصنف StreamWriter
3 سوف يحفظ هذا الكائن القيمة الموجودة في المكون textbox
4 اغلاق المكون
ننتقل الان الى الحفظ المباشر نرى في الكثير من محررات النصوص ان الحفظ في المرة الاولى يظهر لنا نافذة الحفظ وعمليات الحفظ الموالية لا يظهر هذه النافذة فكيف يتم ذلك
نقوم بما يلي
اضافة متغيرين سنستخدمها في هذه العملية في القسم protected
stmw :StreamWriter; save :Boolean; fil: String;
ونكب في حدث الضغط على حفظ في القائمة الكود التالي
if save = false then begin saveFileDialog1.ShowDialog(); stmw := new StreamWriter(saveFileDialog1.FileName); stmw.WriteLine(textBox1.Text); save := true; stmw.Close(); end else begin stmw := new StreamWriter(fil); stmw.WriteLine(textBox1.Text); stmw.Close(); end; fil := saveFileDialog1.FileName;
معنى الكود اذا كان المتغيير Save قيمته False (يعني لم نقم بعملية حفظ سابقا)
نقوم بنفس العملية التي قمنا بها في الحفظ باسم بعدها سياخذ المتغيير Fil مسار الملف كقيمة له
اما اذا كنا قد حفظنا الملف سنحفظ التغيير في المسار الموجود في المتغيير fil
ملاحظة يجب علينا ايضا ان نظيف في كود الحفظ باسم
save :=true
ليصبح كما يلي
saveFileDialog1.ShowDialog(); stmw := new StreamWriter(saveFileDialog1.FileName); stmw.WriteLine(textBox1.Text); save := true; stmw.Close();
الان ننتقل الى كيفية فتح ملف موجود
نقوم باضافة مكون openFileDialog ومتغيير في القسم protected كما يلي
stmw :StreamWriter; save :Boolean; fil: String; stmr:StreamReader;
ونكتب في حدث الضغط
save := false; openFileDialog1.ShowDialog(); stmr := new StreamReader(openFileDialog1.FileName); textBox1.Text := stmr.ReadToEnd(); save := true; fil := openFileDialog1.FileName;
المقصود بهذا الكود
نغيير قيمة المتغيير save الى false لكي لا يختلط الامر مع الملف الذي سبقه ذ
نفتح نافذة فتح ملف
نقوم بانساء كائن جديد من الصنف StreamReader ليمكننا من القراءة من الملفات النصية واخذ مسار الملف المحدده في نافذة الفتح
في السطر الذي يليه يقوم المكون textbox باخذ القيمة الموجودة في المتغيير Stmr
ثم نغلق الكائن
وياخذ المتغيير Save القيمة true
والمتغيير fil ياخذ المسار الذي حددناه لنافذة فتح الملف
نبدا الان في قائمة تحرير
ونبدا بتحديد الكل ونكتب الكود
textBox1.SelectAll;
ننقل الى القص
textBox1.Cut;
ثم النسخ
textBox1.Copy;
اخير اللصق
textBox1.Paste;
اما قائمة المساعدة يمكن ان تعرف بنفسك والبرنامج باي طريقة تعجبك
وباذن الله سوف نقوم ببعض الاضافات في المستقبل القريب ان شاء الله
وفقنا الله واياكم