PDA

View Full Version : اجرا نشدن دستورات قبل از FOR



حسین علوی
دوشنبه 14 مرداد 1387, 00:21 صبح
سلام
ارادتمند تمام دوستان
در برنامه ضمیمه من میخام بعد از زدن دکمه تایید اول لیبل (صبر کنید) روشن بشه بعد حلقه FOR
کارشو انجام بده ولی الان بازدن دکمه تایید اول حلقه FOR انجام میشه بعد لیبل روشن میشه.در حالی که اون دستو ر قبل از حلقه FOR هست؟
لطفا راهنمایی کنید مشکل چیه؟
با تشکر

loads
دوشنبه 14 مرداد 1387, 03:40 صبح
سلام
یه تغییر کوچیک تو برنامتون دادم . موفق باشید

حسین علوی
دوشنبه 14 مرداد 1387, 05:52 صبح
سلام
یه تغییر کوچیک تو برنامتون دادم . موفق باشید
سلام
با تشکر از شما
بله میدونم اگه این دستور رو در رویداد mouse down بنویسیم درست میشه
ولی چرا اگه این دستور رو در رویداد کلیک بنویسیم درست اجرا نمیشه؟مگه دستورات برنامه بصورت خط به خط نباید اجرا بشن؟

vbhamed
دوشنبه 14 مرداد 1387, 11:44 صبح
سلام
ويژوال بيسيك براي اينكه كارهاش رو سريعتر انجام بده خودش موقع اجرا يك سري اولويتهايي در نظر مي گيره، البته برنامه رو خط به خط اجرا مي كنه و اين اولويتها تو نمايش هستند
شما هر جا چنين مشكلي ديديد از دستور DoEvents استفاده كنيد كه ويژوال رو مجبور مي كنه حتما خروجي برنامه تا اون قسمت رو منعكس كنه

xxxxx_xxxxx
دوشنبه 14 مرداد 1387, 13:32 عصر
من برنامتو نديدم ولي مطمئن هستم كه با اين كار مشكلت حل ميشه.

توي حلقه For بايد تو يك خط فقط بنويسي DoEvents . همين.

DoEvents باعث ميشه كه cpu به وقفه هاي ديگه هم جواب بده. و زماني كه ما در حلقه ها از DoEvents استفاده نمي كنيم در واقع cpu تمام تلاشش اينه كه فقط حلقه رو به انتها برسونه و به هيچ دستور ديگه اي توجه نمي كنه.

موفق باشيد.