PDA

View Full Version : progressbar تا زمان لود فرم دوم



j_kashani2003
شنبه 18 اسفند 1386, 18:12 عصر
سلام
شاید به نظر بیاد این سوال تکراری و ساده باشه اما من نتونستم از تاپیک های قبلی مشسکلم رو حل کنم
من یک فرم login دارم که یوزر و پسورد رو از db می خونه و بعد از تایید اون، یک فرم MDIParent رو باز می کنه این کار مقدار زمانی طول میکشه می خواستم تا لود فرم دومی یعنیmdiparent یک progressbar وضعیت لود شدن فرم 2 رو تو فرم 1 یا همون فرم login نشون بده یه سری نمونه هم دیدم اما به درد کار من نخورد
می خواستم بدونم کسی می تونه کمکم کنه؟

Mbt925
شنبه 18 اسفند 1386, 19:05 عصر
پروسه ای که در حال انجام مرحله به مرحله صورت میگیره؟
و تعداد مراحل مشخصه؟

اگه مشخص نیست باید از ProgressBar هایی که پرو خالی میشن (حالت انتظار) استفاده کنید.

اوبالیت به بو
یک شنبه 19 اسفند 1386, 12:52 عصر
آخه بستگی داره.
شما ProgressBar رو میزاری برای اینکه یه فرایندی از یه جا شروع و یکجا تمام بشه و اگر زمان اتمامش رو نمی دونی به قول جناب mbt925 باید پر و خالی بکنی.
حالا شما می خوای برای نمایش فرم 2 از ProgressBar استفاده بکنی. یعنی زمان اتمام لود شد فرم 2 رو می دونی. (نهایت 2 ثانیه)
یه تایمر + ProgressBar
Interval دلخواه.

Timer:
If ProgressBar1.Max= Varible Then
Form2.Show
Else
ProgressBar.Value=Val(ProgressBar.Value+10)
End If
یه نمونه ساده.

j_kashani2003
دوشنبه 20 اسفند 1386, 23:15 عصر
در مورد حالت انتظاری که پر و خالی میشه من یک gif انیمیت گرفتم و گذاشتم تو یک کنترل picture و خصوصیت invisible رو false کردم و تو کلیک دکمه خصوصیت invisible اون رو true کردم و بعد از اون دستور نمایش فرم رو نوشتم اما مشکل اینه که وقتی دکمه کلیک میشه تصویر انیمیت با تاخیر ظاهر میشه طوری که همراه با لود شدن فرم 2 نمایش داده میشه که جوابگوی حالت انتظار لود فرم نیست
در مورد استفاده از کنترل timer و اختصاص زمان نمایش مثلاً 2 ثانیه ای که دوستمون گفتن باید بگم که فرم 2 یک سری اطلاعاتی از db می خونه و همچنین سرعت لود از کامپیوتری به کامپیوتر دیگه فرق میکنه شاید یکی 2 ثانیه طول بکشه و کامپیوتر دیگه بیشتر یا کمتر
پس واقعاٌ نمیشه زمان مشخصی در نظر گرفت
کد مقدار زمان لود داده db رو دارم اما چطوری محاسبه لود فرم رو ندارم و این مشکل هنوز حل نشده

Mbt925
سه شنبه 21 اسفند 1386, 09:30 صبح
نیازی به استفاده از تصویر نیست ، از ProgressBar استفاده کنید.

زیاد معرفی شده ، جستجو کنید.

Dr.Bronx
سه شنبه 21 اسفند 1386, 22:49 عصر
فکر می کنم این جواب گو باشه


private sub Timer1
if progressbar1.value = 100 then
if form2.show
then
progressbar1.visible = false
else
progressbar1.value = progressbar1.value + 10
end if
end if
end sub