الدرس السادس عشر إنشاء مفكرتي الخاصة الجزء الرابع
مرحبا بكم في الدرس السادس عشر من دروس لغة البرمجة c#
في هذا الدرس نواصل إنشاء مفكرتنا الخاصة
ومن خلال هذا الدرس سوف نقوم بإضافة خصائص القطع والنسخ واختيار الكل واللصق
وهذه الخصائص جميعها وأيضا هنالك الكثير من الخصائص الأخرى
تكون مرفقة مع مربعات التحرير جميعا بصورة إفتراضية
لذا يمكن استدعائها والتعامل معها بكل يسر وسهولة وذلك باستخدام سطر إلكتروني واحد لكل عملية
وعلى سبيل المثال تكون طريقة كتابتها كما يلي
text1.Copy(); نسخ النص المختار إلى الحافظة
text1.Cut(); قطع النص المختار من مربع التحرير ونسخه في الحافظة
text1.Paste(); لصق محتوى الحافظة إلى نقطة المؤشر الحالية في مربع التحرير
text1.SelectAll(); إختيار جميع محتوى مربع التحرير
بهذه الطريقة نقوم بكتابة اسم مربع التحرير ثم نقطة ثم اسم الخاصية المراد اساتخدامها
لإضافة أي خاصية جديدة فقط يجب علينا معرفة اسم ووظيفة الخاصية التي نريد استخدامها
ملحوظة بإنشاء أي مربع تحرير تكون جميع هذه الخصائص متاحة بصورة تلقائيا
وبدون أي إضافات يمكن استخدام مفاتيح الإختصار الخاصة بهذه الخصائص جميعا
وأيضا يمكن استخدامها من خلال القائمة الفرعية وذلك بالضغط على الفأرة اليمين أو بالضغط على مفتاح التطبيقات
باستخدام خاصية النسخ واللصق يمكننا نسخ وإلتقاط محتوى الحافظة لكن في هذه الحالة تكون العمليات محصورة فقط مع مربعات التحرير
وإذا أردنا التعامل مباشرة مع الحافظة يمكن تحقيق ذلك من خلال الخطوات التالية
باستخدام خاصية Clipboard.SetText يمكننا وبكل سهولة ويسر لصق النصوص إلى الحافظة بدون الحوجة لمربعات التحرير
ومثال على ذلك
Clipboard.SetText("بين علامتي التنصيص نقوم بكتابة النص المراد لصقه بالحافظة");
بهذه الطريقة يمكننا لصق أي من نص أو بيانات على الحافظة
ملحوظة لا يمكن استخدام هذه الخاصية للصق الملفات والمجلدات على سبيل المثال وسوف نتعرف على إمكانية لصق الملفات في الدروس القادمة
ومن ناحية أخرى إذا أردنا إلتقاط محتوى الحافظة
يمكننا تحقيق ذلك باستخدام خاصية Clipboard.GetText وباستخدام هذه الخاصية يمكننا التعرف على محتوى الحافظة بكل يسر سهولة
وفي المثال التالي نقوم باستخدام خاصية Clipboard.ContainsText وذلك للتحقق من وجود أي بيانات في الحافظة أم لا
//التحقق من وجود أي بيانات في الحافظة
if (Clipboard.ContainsText()) // إذا كان هنالك أي محتوى على الحافظة
{
//إذا كانت هنالك أي بيانات على الحافظة يتم التعرف على هذا النص
//وإذا تعذر التعرف على البيانات تكون النتيدة فارغة من النصوص
Console.WriteLine(Clipboard.GetText());// إظهار محتوى الحافظة على الشاشة
}
وبهذه الطريقة يمكننا التعامل مع الحافظات بكل يسر وسهولة
وبالإضافة للميزات المذكورة أعلاه قمنا بإضافة خاصية إدراج التاريخ والوقت إلى نقطة المؤشر الحالية
وبالنسبة للغة c# يمكننا استخدام حزمة dateTime وهي حزمة متخصصة للتعامل مع الزمن
وباستخدام هذه الحزمة يمكننا التعرف على السنة والشهر واليوم والساعة والدقيقة والثانية والجزء من الثانية
كما يمكننا وبكل يسر وسهولة صياغة النتيجة المطلوبة بالشكل والطريقة التي نرغب فيها
وبإضافة خاصية Now إلى هذه الحزمة نتمكن من التعرف على الساعة الآن
والمقصود بالتعرف على الساعة أو التاريخ هو الزمن الخاص بجهازنا لذا قد تختلف النتيجة من جهاز إلى آخر
وكما هو موضح في المثال التالي سوف نقوم باستخدام خاصية DateTime.Now للتعرف على الوقت الحالي
DateTime dt = DateTime.Now; نقوم بإصدار حزمة dateTime وإضافة التاريخ والساعة الحالية على الزمن الخاص بجهازك إلى المتغير td
Console.WriteLine(dt); إظهار التاريخ والوقت الحالي على الشاشة
وسوف تظهر لنا النتيجة على النحو التالي
2019/08/22 15:25:39
بهذه الطريقة نتمكن من التعرف على التاريخ والوقت الحالي
وبنفس الطريقة يمكننا التعرف على كل عنصر على حدا
وذلك على النحو التالي
للتعرف على السنة نستخدم خاصية year
للتعرف على الشهر نستخدم خاصية month
للتعرف على اليوم نستخدم خاصية day
للتعرف على الساعة نستخد خاصية hour
وللتعرف على الدقيقة نستخدم خاصية minute
وللتعرف على الثانية نستخدم خاصية second
وللتعرف على الجزء من الثانية نستخدم خاصية millisecond
وذلك على النحو الموضح في المثال التالي
DateTime dt = DateTime.Now; إعلان حزمة التاريخ والوقت
Console.WriteLine(dt);إظهار التاريخ والوقت الحالي كاملا
Console.WriteLine("سنة " + dt.Year); // إظهار السنة الحالية على الشاشة
Console.WriteLine("شهر " + dt.Month);// إظهار الشهر الحالي على الشاشة
Console.WriteLine("يوم " + dt.Day);// إظهار اليوم في الشاشة
Console.WriteLine("الساعة " + dt.Hour); // إظهار الساعة الحالية
Console.WriteLine("الدقيقة " + dt.Minute); // إظهار الدقيقة الحالية على الشاشة
Console.WriteLine("الثانية " + dt.Second); إظهار الثانية الحالية
Console.WriteLine(dt.Millisecond + "جزء من الثانية"); // إظهار عدد أجزاء الثانية الحالية
بهذه الطريقة يمكننا التعرف على أي عنصر من عناصر التاريخ والوقت بكل يسر وسهولة
وأيضا يمكننا صياغة التاريخ والوقت بالصيغة التي نريد وذلك باستخدام خاصية ToString
ويمكننا التعرف على هذا من خلال المثال التالي
DateTime dt = DateTime.Now; // إعلان حزمة التاريخ والوقت
string result = dt.ToString("yyyy/MM/dd HH:mm:ss:fff");// إضافة نتيجة التاريخ والوقت الحاليين إلى المتغير result. في هذا المثال قمنا بين الفصل بين السنة والشهر واليوم بعلامة / وفصلنا بين الساعة والدقيقة والثانية وجزء من الثانية بعلامة : . إذا قنا بكتابة حرف y 4 مرات نحصل على السنة الحالية بصيغة كاملة وإذا كتبناها مرتين فقط نحصل على السنة الحالية مختصرة في رقمين فقط. وحرف m للتعرف على الشهر. وللتعرف على اليوم نستخدم حرف d. وللتعرف على الساعة نستخدم حرف h. وللتعرف على الدقيقة نستخدم حرف m والفرق بينها وبين علامة الشهر هو فقط الفرق في الحروف الكبيرة والحروف الصغيرة فيجب الإنتباه. وللتعرف على الثانية نستخدم الحرف s . وللتعرف على أجزاء الثانية نستخدم الحرف f 3 مرات وذلك لأن الثانية تتكون من 1000 جزء
Console.WriteLine(result); إظهار نتيجة أو قيمة المتغير في الشاشة
وكما هو موضح في المثال التالي يمكننا كتابته في صيغة مختلفة
result = dt.ToString("سنة yyyy شهر MM اليوم dd الساعة الآن HH الدقيقة mm الثانية ss fff جزء من الثانية"); // بهذه الطريقة يمكن إضافة الكلمات التي نغرب فيها قبل وبعد العنصر المعين
Console.WriteLine(result); // إظهار النتيجة على الشاشة
ونتيجة المثال الأول تكون على النحو التالي
2018/05/04 15:39:24:302
ونتيجة المثال الثاني هي كما يلي
سنة 2019 شهر 05 اليوم 22 الساعة 15 الدقيقة 39 الثانية 24 481 جزء من الثانية
وبإضافة خاصية Now إلى حزمة التاريخ والوقت تكون النتيجة هي الزمن المحلي للبلد وذلك إستنادا على زمن الجهاز الخاص بنا
وباستخدام خاصية UtcNow يمكننا الحصول على التوقيت العالمي وطريقة إستخدام هذه الخاصية هي مطابقة تماما مع خاصية
Now
ومثال على ذلك هو كما موضح في المثال التالي
DateTime dt = DateTime.Now; // إعلان حزمة التاريخ والوقت
Console.WriteLine("التوقيت المحلي:" + dt); // إظهار التاريخ والوقت الحالي في الشاشة
dt = DateTime.UtcNow; // الحصول على التوقيت الدولي
Console.WriteLine("التوقيت العالمي:" + dt);
وبهذه الطريقة يمكننا المقارنة بين الطريقتين بكل يسر وسهولة
بهذه الطريقة يمكننا التعامل مع التاريخ والوقت بكل يسر وسهولة وأيضا توجد هنالك العديد من الحز والطرق للتعامل معهمافسوف نتطرق إليها في حينها إنشاء الله
وبهذا القدر نكون قد أكملنا درسنا لهذا اليوم
أما بالنسبة لمحتوى السطور الإلكترونية المستخدمة في درس اليوم فنرجوا مراجعتها من خلال الملفين
الملف الأول form1.cs
والملف الثاني form1.designer.cs
واختصارا للوقت والمساحة لم نتمكن من نشر محتواهما فتقبلوا مني خالص الإعتذار
وبالطبع قد قمت بكتابة كل الملاحظات والشروحات داخل السطور الإلكترونية فأي شخص تابع معنا الدروس السابقة وفهمها فسوف يتمكن من التعمل معها بكل يسر إنشاء الله تعالى
ولتحميل المشروع المستخدم في هذا الدرس الرجاء الضغط على رابط
لذا نتمنا مراجعة محتوى هذا الدرس بصورة جيدة حتى يسهل علينا الاستمرار في الدروس القادمة
كما يسرني استقبال أسألتكم وذلك من خلال المنتدى العام أو من خلال مجموعة البريد الإلكتروني
للذهاب إلى صفحة المتدى العام الرجاء الضغط على رابط
وللإشتراك في مجموعة البريد الإلكتروني الرجاء الضغط على
الإشتراك بمجموعة البريد الإلكتروني وإلغاء الإشتراك