View Full Version : كار با Progressbar
golnouri
چهارشنبه 23 تیر 1389, 19:09 عصر
دوستان من مي خواهم تو فرمم يك Progress bar از اول تا آخر پر بشه.
بايد چيكار كنم؟
behnam25214
چهارشنبه 23 تیر 1389, 19:25 عصر
خوب یه تایمر بزار بعدش بعد هر ثانیه یا هر زمانی که دوست داری یکی یکی اضافه بشه تا آخر.
mahdi_7610
چهارشنبه 23 تیر 1389, 19:37 عصر
سلام
بفرمایید
golnouri
چهارشنبه 23 تیر 1389, 19:49 عصر
سلام
بفرمایید
باز نميكنه فايلتون و اگه مي تونيد كدش و بنويسيد. همينجا.
mahdi_7610
چهارشنبه 23 تیر 1389, 20:22 عصر
احتمالا شما از vs2005 استفاده می کنید .
ابتدا یک BackgroundWorker و یک ProgressBar و یک Button روی فرم قرار بدید .
این مقادیر را داخل کلاس فرم تعریف کنید
public bool FLAG = true;
public long MAX = 200000000;
توی رویداد DoWork مربوط به backgroundWorker1 مقادیر زیر را وارد کنید .
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
int i = 1;
for (long l = 0; l < MAX; l++)
{
if (l == (long)(MAX / 100) * i)
{
backgroundWorker1.ReportProgress(i);
i++;
}
}
}
همچنین توی رویداد ProgressChanged کدهای زیر را قرار بدید
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
prgsBar.Value = e.ProgressPercentage;
this.Update();
}
توی رویداد RunWorkerCompleted کدهای زیر را وارد کن
private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
FLAG = true;
}
کدهای زیر را هم به رویداد کلیک باتن نسبت بده
private void button_Click(object sender, EventArgs e)
{
if (FLAG)
{
backgroundWorker1.RunWorkerAsync();
FLAG = false;
}
}
اسم progressBar را prgsBar بزار
و خاصیت workerReportProgess مربوط به backgroundWorker را true کن
موفق باشی
mehdikhazaei
پنج شنبه 24 تیر 1389, 00:31 صبح
کاربر hossein-ignore یک فایل آموزشی درباره progressbar چند روز پیش ارسال کرده بودند
اگه در چند صفحه قبل جستجو کنید پیدا می کنید.
خیلی مفیده.
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.