![]() |
|
من المنتدى القديم - للمبتدئين كل ما تريد معرفته عن الوقت والتاريخ والأدوات المتعلقة - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغات البرمجة الاخرى (http://vb4arb.com/vb/forumdisplay.php?fid=4) +--- قسم : قسم لغة vb6.0 (http://vb4arb.com/vb/forumdisplay.php?fid=18) +---- قسم : قسم مقالات vb6.0 (http://vb4arb.com/vb/forumdisplay.php?fid=29) +---- الموضوع : من المنتدى القديم - للمبتدئين كل ما تريد معرفته عن الوقت والتاريخ والأدوات المتعلقة (/showthread.php?tid=5581) |
من المنتدى القديم - للمبتدئين كل ما تريد معرفته عن الوقت والتاريخ والأدوات المتعلقة - RaggiTech - 14-10-12 كاتب الموضوع : أحمد جمال
هي مجموعة من الدروس والمقالات التي كانت موجودة منذ مدة في المنتديات ولكنها ضاعت مع ضياع قاعدة البيانات ، هذه واحدة منها :اعداد : فتى فيجوال . عنوان الموضوع : للمبتدئين : كل ما تريد معرفته عن الوقت - التاريخ - والأدوات المتعلقة بهما . بسم الله الرحمن الرحيم . في هذا الموضوع الخفيف سنتعرض للعديد من المواضيع التي تتعلق بالوقت والتاريخ نتمنى إن شاء الله أن تكون هناك فائدة للجميع . أولاً : عرض الوقت في Label أو غيره بالطريقة القياسية - وكذلك التاريخ : الأمر بسيط جداً ... كل ما عليك هو وضع Timer وتغيير خاصية Interval = 1000 مثلاً للوقت وأكثر للتاريخ ، ومن ثم كتابة الأمر التالي : كود : Label1.Caption = DateTimeكود : Date : 07/07/2003* ملاحظة : في كل ما سبق يمكن كتابته مباشرة دون كتابة DateTime . ثانياً : عرض جزء من الوقت أو التاريخ ( سنة - شهر - يوم - ساعة - دقيقة - ثانية ) بنفس الطريقة السابقة أو بغيرها من الطرق ولكن يصبح الكود بالشكل التالي ( للثانية مثلاً ) . كود : Text1.Text = [color=red]Second[/color](Now)ويمكنك استخراج هذه القمية من قيمة أخرى مرسلة بالشكل التالي على سبيل المثال . كود : Dim A1يتم ذلك بتحويل طريقة التاريخ بالشكل التالي للهجري : كود : VBA.Calendar = vbCalHijriكود : VBA.Calendar = vbCalGregكود : Text1.Text = DateTime.Dateنكتب هذه الدالة في موديول : كود : Public Function TransDate(thedate As Date, TypeTrans As Integer) As Stringنضع هذا الأمر في المكان المطلوب : كود : Dim Day_Now As Integer( الطريقة لأحد أعضاء المنتدى لا أتذكر اسمه تحديداً ولكنه وضعها قريباً . ورأيت أن اضيفها هنا لارتباطها بالموضوع بعد إذنه طبعاً ) ضع تايمر وغير Intrval = 1000 واجعل وحدة قياس الفورم Pixel ثم اكتب ما يلي . كود : Dim x, y, w, mنكتب في موديول ما يلي : كود : Declare Function GetTickCount Lib "kernel32" () As Longكود : Dim Minutes As Longلاضافتها قم بالضغط على Ctrl + T ومن ثم اختيار Microsoft Calendar Control 10.0 أو أي اصدار آخر . ومن ثم قم برسمها على الفورم ، وستجد بها العديد من الخيارات وأهمها ( هذه الخيارات أغلبها في Custem ) . * Value : لتحديد التاريخ المطلوب ومنه يمكن ضبطها بوضع الأمر التالي : كود : Calendar1.Value = DateTime.Calendar* Day Length - Month Length : لتحديد طريقة عرض اليوم والشهر . * Grid Call Efect : لاختيار طريقة من ثلاث طرق للعرض باختلاف التحديد . ستجد أيضاً العديد من الخيارات لاظهارها واخفائها تحت بند Show . ومن ثم في Font ستجد ثلاثة أنواع : خط ( اليوم من الأسبوع - الأرقام الخاصة بأيام الشهر - العنوان ) . وفي Color ستجد لون ( الخلفية - اليوم من الأسبوع - الأيام من الشهر - شيء ما لا أعرفه - العنوان ) . أما عن الأوامر التي يمكن استخدامها فمنها: NextDay - NextMonth - NextWeek - NextYear ( اليوم - الأسبوع - الشهر - السنة ) التالية . وعكسها : PreviousDay - PreviousMonth - PreviousWeek - PreviousYear تاسعا : عمل مؤقت ليدق جرس عند مدة معينة : الامر ليس صعباً ، فكل ما في الأمر هو وضع Timer واختبار الوقت بالشكل التالي : If Text1.Text = DateTime.Time Then Ring حيث أن Text1 تحتوي على الوقت المطلوب ، و Ring هو حدث ليدق جرس أو لتظهر رسالة . عاشراً : تغيير وقت الكومبيوتر : اكتب الوقت الذي تريده في Text1 مثلاً ثم اكتب الأمر التالي فقط : DateTime.Time = text1.Text الحادي عشر : عمل ستوب ووتش : الأمر بسيط جداً ... ضع أربع مربعات نص Text1,Text2,Text3,Text4 ثم ضع الأمر التالي في Timer بعد ضبط خاصية Intrval = 100 : كود : Text4 = Text4 + 1كود : Timer1.Enabled = Falseكود : Text1.Text = 0 : Text2.Text = 0 : Text3.Text = 0 : Text4.Text = 0الثاني عشر : عمل عداد تنازلي : اكتب في Genral Dim My_Time وضع Timer وغير interval إلى 1000 وخاصية Enabled = False . ضع Text1 للثواني Text2 للدقائق Text3 للساعات ، وفي زر الأمر ضع الامر التالي : كود : My_Time = Text1 + ( Text2 * 60 ) + ( Text3 * 60 *60 )كود : My_Time = My_Time - 1وعند زر Stop اكتب : كود : MsgBox DateTime.DateValue(Now + 2)نستخدم في ذلك الدالة DateValue ويمكننا أن نكتب قبلها DateTime. أولا لا كما نريد ... ومثال لاضافة يوم . كود : Text1.Text = DateAdd ( "اضافة إلى","العدد","اضافة")الصيغة العامة لأمر اضافة أيام هي ما يلي : كود : Text1.Text = DateAdd ("D",2,Now)فمثلاً لاضافة يومين إلى التاريخ الحالي : Text1.Text = DateAdd ("D",2,Now) وهكذا ... أما لطرح تاريخين فمثلاً نكتب الأمر التالي Msgbox DateDiff("M","12/11/2001","11/08/2003) حيث M ليخرج الناتج بالشهور كما سبق الخامس عشر : معرفة الشهر من السنة : نستخدم الدالة MonthName بالشكل التالي Msgbox MonthName(4) وسيكون الناتج حسب النظام المعتمد من Vba السادس عشر : أخرى : الملف المرفق يحتوي على مجموعة من الأدوات والملفات والمشاريع المتعلقة بهذا الموضوع والتي حملتها من هذا المنتدى وغيره مع شكر خاص لاصحابها . * طريقة استخراج اليوم - الشهر - السنة من التاريخ . * عمل عداد عن طريق عمل مقارنة مع ساعة الويندوز . * أداة لعمل ستوب ووتش . * طريقة أخرى لعمل ساعة بعقارب . وأجدد شكري لاصحابها مرة أخرى . وأخيراً : فهذا الشرح قد لا يخلو من أخطاء أتمنى ممن يكتشف خطأ أو نقصاً أن يبنيه . والسلام عليكم ورحمة الله وبركاته . RE: من المنتدى القديم - للمبتدئين كل ما تريد معرفته عن الوقت والتاريخ والأدوات المتعلقة - abulayth - 06-03-15 الف شكر |