PDA

View Full Version : راهنمایی در مورد استفاده از progressbar



m0rteza
چهارشنبه 06 شهریور 1387, 22:10 عصر
سلام .
بر نامه من یک کاری رو در حال انجام دادن هست که کمی طول میکشه . حالا میخوام در این مدت زمان از Proccesbar استفاده کنم. و وقتی که کار برنامه تموم شد اونم پر شده باشه
ممنون

migrant
چهارشنبه 06 شهریور 1387, 22:44 عصر
من هم به این مورد نیاز دارم ولی چطور میشه فهمید چقدر از کار باقی مونده ؟؟؟؟؟؟ و بر چه اساسی این proccess bar پر میشه ؟؟؟؟

sinpin
چهارشنبه 06 شهریور 1387, 22:53 عصر
من هم به این مورد نیاز دارم ولی چطور میشه فهمید چقدر از کار باقی مونده ؟؟؟؟؟؟
progressbar بتنهايي جادو نميكنه (!) فقط مطابق دستور شما ميزان باقيمانده عمليات را ويژوالي نشون ميده، خود شما ميبايست تعيين كنيد كه چقدر از كار انجام شده و يا چقدر باقي مونده (= تعداد فايلها، حجم فايل، تعداد ركوردها، تعداد عمليات رياضي، شمارنده حلقه و ...)

m0rteza
چهارشنبه 06 شهریور 1387, 23:13 عصر
ممنون و بنده هم میدونم که باید برای این کار کد نوشت . درخواست منم همین کد بود .

kablayi
پنج شنبه 07 شهریور 1387, 01:28 صبح
progressbar بتنهايي جادو نميكنه (!) فقط مطابق دستور شما ميزان باقيمانده عمليات را ويژوالي نشون ميده، خود شما ميبايست تعيين كنيد كه چقدر از كار انجام شده و يا چقدر باقي مونده (= تعداد فايلها، حجم فايل، تعداد ركوردها، تعداد عمليات رياضي، شمارنده حلقه و ...)

سلام ...
نمیدونم این روشی رو که میگم کار درستیه یا نه ولی من همیشه از اون استفاده میکنم ...
با دستور زیر میشه مقدار پروگرس بار رو زیاد کرد ...


progressbar.value+=4 ' عدد دلخواه

من این دستور رو لابه لای دستورات دیگه ای که قراره انجام بشه مینویسم و هر بار به اون خط میرسه میزان پروگرس بار افزایش پیدا میکنه ...

معمولا جوری تنظیم میکنم که به نسبت مساوی اضاف میشه ...

در آخر دستورات هم :


progressbar.visible=false

...
...
...
یه روش ساده تر هم هست ... ابتدا خاصیت style رو روی Marquee قرار بدید ...
بعد در ابتدای دستورات مورد نظر progressbar رو نمایش بدین با این کار میله سبز رنگ در یک حلقه شروع به چرخیدن میکنه تا پایان دستورات که با یه دستور اونو ببندید ... اینجوری دیگه کاربر عصبانی نمیشه و تا زمانی که اون میچرخه منتظر میمونه ...

sinpin
پنج شنبه 07 شهریور 1387, 14:06 عصر
نمیدونم این روشی رو که میگم کار درستیه یا نه ولی من همیشه از اون استفاده میکنم ...
با دستور زیر میشه مقدار پروگرس بار رو زیاد کرد ...


progressbar.value+=4 ' عدد دلخواه
من این دستور رو لابه لای دستورات دیگه ای که قراره انجام بشه مینویسم و هر بار به اون خط میرسه میزان پروگرس بار افزایش پیدا میکنه ...
نمايش ميزان پيشرفت انجام كار، كاري تخميني و تقريبي است. اما ترجيحا بهتر است اين نمايش در يك thread ديگر انجام شود. ( مثلا به كمك BackgroundWorker (http://barnamenevis.org/forum/showpost.php?p=485225) )
چون گاهي عملي كه در يك سطر كد انجام ميشود ممكن است زيادي زمانبر باشد (مانند كپي كردن يك فايل 500 مگابايتي) و يا پشتيبانگيري از اطلاعات يك ديتابيس و ...