السلام عليكم و رحمة الله و بركاته
هل يعجز في تنفيذ هذا الكود في اقل من 5 ثواني ؟
كود :
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
For XX = 0 To 1000000000
TTX2.Text = XX
Next
End Sub
هل استطيع تنفيذ هذا الامر في اقل من 5 ثواني ؟
وشكرا

انا متفأئل و عندي احساس راح يكون فيه حل ان شاء الله
///
طيب مافيه فنكشن او اي شيء لتفادي التعليق ؟ بحيث لا تتجاوز مدة التعليق ثانيتيين + لا تتجاوز مدة تنفيذ الكود 4 ثواني = 6 ثواني فقط
///
سعود شكرا لردك بس احسك تسرعت
\\\
hany gamal : حاليا الكود عباره عن العد من 1 الى 1000000000
السلام عليكم ورحمة الله وبركاته
تفضل أخي الكريم
جرب هذا الكود
كود :
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Button2.Enabled = False
For XX = 0 To 1000000000
TTX2.Text = XX
Application.DoEvents()
Next
Button2.Enabled = True
End Sub
الكود السابق سوف لن يعلق لكنه سيتأخر
بالتوفيق
يا ظالم لماذا تريد أن تعرض القيمة في التكست بوكس ؟
إن كان ولا بد خليها في مسار تنفيذ ثاني
طريقة أفضل باستخدام BackgroundWorker
PHP كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Control.CheckForIllegalCrossThreadCalls = False
Me.BackgroundWorker1.RunWorkerAsync()
End Sub
Private Sub BackgroundWorker1_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
For XX = 0 To 1000000000
If XX Mod 50000 = 0 Then
TTX2.Text = XX
End If
Next
End Sub
لاحظ اني لم اعرض كل قيمة للعداد xx لأنه يستغرق وقت في رسم النص ، اختصارا أعرض مضاعفات الـ 50000 وأنت حر
و اذا اردته اسرع اخفي الاداه التكست من الفورم حتى انتهاء العمليه ثم أظهره
أبو يعقوب كتب :يا ظالم لماذا تريد أن تعرض القيمة في التكست بوكس ؟
إن كان ولا بد خليها في مسار تنفيذ ثاني
تكفى قولي عن مسار التنفيذ المناسب + انا اصلا ما ابغى العدد يعرض في التكست او غيره
انا فقط ابغى استعلم عن قيمه تكون من 0 الى 9999999999
و اذا تحقق الشرط تظهر القيمه في التكست
لكي اسهل من الامر راح اخليه
for xx = 123456 To 9999999999 Step 2
/////
شكرا لكم + جزاكم الله الف خير
+
اتمنى الحل D: