نوشته شده توسط
Alirezanet
مثلا توی بدنه For Each یا For Next یا یه همچین چیزایی ...
بشه پاز گرفت و .........
براي اين کار بايد سه مرحله طي کنيد
اول در سطح عمومي فرم يک متغير از نوع بولين ايجاد کنيد
Dim Poused As boolean
يک دکمه براي مکث/ادامه روي فرم قرار داده که مقدار Poused را برعکس کند
Poused=not Poused
سوم اين که در داخل حلقه بررسي کنيد اگر مقدار Poused مثبت بود، از حلقه خارج شود
البته بايد بگم که براي مکث بايد يک متغير ايستا Static هم داخل روال بايد تعريف کنيد که محل توقف را حفظ کند مثلا اگر حلقه شما از يک تا 300 هست و در شماره 65 متوقف شده، اين متغير قبل از خروج از حلقه، مقدار 65 را ذخيره کند ، شروع حلقه هم بايد از همين متغير باشد که تبعا در اولين بار اجرا صفر است چون تا آن موقع مقدار دهي نشده است به اين مثال توجه کنيد:
sub DoWork
static i as Integer
for J as integer =I To List1.Items.count-1
If Poused=false then
Mytxt &=list1.Items(j)
else
I=J
Exit for
end if
end sub
در اين مثال ، پس از زدن دکمه مکث، متغير I شماره جاري را گرفته و از حلقه خارج ميشود. پس از اين که مجددا کاربر کار را از سر گرفت، از همان شماره ادامه ميدهد
براي توقف کامل، همان سه مرحله اول کافي است