![]() |
|
[VB.NET] هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183) +--- الموضوع : [VB.NET] هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! (/showthread.php?tid=18277) |
هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - الماجيك مسعد - 06-12-16 السلام عليكم طبعا كلنا نعلم ان التايمر يهنج البرنامج خصوصا لو البرنامج كبير فكيف يمكن الاستغناء عن التايمر واستخدام شئ بديل او فنكشن بديل يقوم بالمهمة بدل التايمر مثال هذا الكود كود : Dim timercount As Integer = 0وجربت هذا الكود ولم ينفع كود : While Trueوجرب هذا ايضا ولم ينفع فهل من مساعد ؟ RE: هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - silverlight - 06-12-16 ماهو هدفك من استخدام التايمر؟ وضح بهدوء ماذا تريد أن تفعل تحديدا RE: هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - الماجيك مسعد - 06-12-16 هذا ما اريد اقرا الكود Dim timercount As Integer = 0 Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick timercount = timercount + 1 Dim Hrs As Integer Dim Min As Integer Dim Sec As Integer Dim x = timercount.ToString Sec = x Mod 60 Min = ((x - Sec) / 60) Mod 60 Hrs = ((x - (Sec + (Min * 60))) / 3600) Mod 60 txtRemaining.Text = String.Format("mg {0} hh, {1} mm, {2} ss", Hrs, Min, Sec) End Sub الكود يحسب ويعرض مدة تشغيل البرنامج بالثانية والدقيقة والساعة ولكن اريد تنفيذه بطريقة او باداة غير التايمر لان البرنامج كبير ويقوم بتشنج البرنامج وتهنيجه RE: هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - silverlight - 06-12-16 طالما تريد تحديد مدة زمنية لشئ معين سواء فترة تشغيل برنامج او زمن تنفيذ كود معين الأفضل لك ان تستخدم StopWatch Class وقي حالتك هنا تبدا StopWach عند بداية البرنامج ثم تقوم بإيقافه حين تريد و ليكن عند اغلاق الفورم مثلا ,وعلي ما اتذكر StopWatch كلاس به خاصية اسمها Elapsed وهي عبارة عن TimeSpan التي ممكن من خلالها حساب المدة الزمنية الكود التالي سوف يعطيك فكرة عن الاستخدام PHP كود : Dim sw As New Stopwatch()PHP كود : Public Class Form1RE: هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - الماجيك مسعد - 06-12-16 (06-12-16, 04:32 AM)silverlight كتب : طالما تريد تحديد مدة زمنية لشئ معين سواء فترة تشغيل برنامج او زمن تنفيذ كود معين الأفضل لك ان تستخدم StopWatch Class السلام عليكم حلول رائعة ولكن فى مشكلة انى اريد عرض الوقت فى البرنامج وليس عند انهاء البرنامج يعنى يظهر الوقت فى البرنامج وتفضل الثوانى والدقائق والساعات شغالة فى البرنامج وتظهر فى التكست بوكس قمت باستخدام هذا الكود [VBASIC] Dim timercount As Integer = 0 Dim Hrs, Min, Sec As Integer Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick Dim T As New Threading.Thread(Sub() timercount = timercount + 1 Dim x = timercount.ToString Sec = x Mod 60 Min = ((x - Sec) / 60) Mod 60 Hrs = ((x - (Sec + (Min * 60))) / 3600) Mod 60 End Sub) With {.IsBackground = True} : T.Start() txtRemaining.Text = String.Format("mg {0} hh, {1} mm, {2} ss", Hrs, Min, Sec) End Sub[/VBASIC] الانترفال 1000 كنت اعتقد ممكن عمل فنكشن مثلا التايمر يعمل كل وقت معين باستمرار مثل التايمر ويكون افضل ولكن للاسف RE: هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - silverlight - 07-12-16 الفكرة التي تريدها ممكنة و لكنها تتطلب كتابة كلاس لذلك وهنا عليك ان تخلط بين الفكرتين تستخدم Stopwatch.Ellapsed و تجمعها مع StartDate RE: هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - الماجيك مسعد - 07-12-16 (07-12-16, 02:01 AM)silverlight كتب : الفكرة التي تريدها ممكنة و لكنها تتطلب كتابة كلاس لذلك فقط كيف يمكن عمل فنكشن او كلاش يؤدى اداى التايمر مثلا تنفيذ مهمة كل وقت معين على حسب تحديد المستخدم وطبعا بدون تهنيج RE: هل يمكن الاستغناء عن التايمر واستخدام شئ بديل يكون افضل ؟ !! - silverlight - 08-12-16 افتح مشروع و ضع Label علي الفورم و نفذ الكود التالي PHP كود : Public Class Form1انا ليه قلت انت تحتاج كلاس السبب حتي تستطيع ان تتحكم في التايمر حينما تريد بحيث تتمكن من إيقاف التايمر أو التخلص منه لكن و بما انك تحتاج لكود وخلاص اعتقد الكود اعلاه سوف يكفي لحل مشكلتك |