PDA

View Full Version : سوال: چگونه زمان سپری شده را نمایش دهم



sajadzare
شنبه 09 شهریور 1392, 10:54 صبح
من میخوام وقتی روی دکمه شروع عملیات کلیک کردم تایمر شروع به کار کنه و زمان سپری شده رو از صفر مثل کرنومتر توی یه لیبل نشون بده البته صدم ثانیه رو دیگه نمیخوام. من یه تایمر روی فرم گذاشتم و اینتروالشو روی 1000 گذاشتم و یه لیبل هم قرار دادم. با فشرده شدن دکمه شروع عملیات تایمر رو true کردم و start کردم . ولی نمیدونم چطور مقدار تکست لیبل رو مقدار جاری تایمر بذارم.

hamid_hr
شنبه 09 شهریور 1392, 11:01 صبح
خب اول بزار صفر باشه
هربار تايمر اجرا شد اون مقدارو بخون تبديل به اينتجر كن يكي بهش اضافه كن و نمايش بده

rezaei_y
شنبه 09 شهریور 1392, 11:01 صبح
اگه فقط میخوای ثانیه های سپری شده رو نمایش بدی یک متغیر سراسری استاتیک با مقدار اولیه 0 تعریف کن
سپس توی رخداد تیک یک واحد بهش اضافه کن و نمایش بده

private static int time=0;

private void timer1_Tick(object sender, EventArgs e)
{
time++;
label1.Text =time.ToString();
}

sajadzare
شنبه 09 شهریور 1392, 11:03 صبح
زمان جاری سیستم رو نمیخوام نشون بدم . تایمر از صفر شروع بشه نه زمان جاری سیستم

sajadzare
شنبه 09 شهریور 1392, 11:15 صبح
اگه فقط میخوای ثانیه های سپری شده رو نمایش بدی یک متغیر سراسری استاتیک با مقدار اولیه 0 تعریف کن
سپس توی رخداد تیک یک واحد بهش اضافه کن و نمایش بده

private static int time=0;

private void timer1_Tick(object sender, EventArgs e)
{
time++;
label1.Text =time.ToString();
}


خب با این کار کاربر فقط یه عدد رو میبینه . من میخوام بفهمه این زمانه یعنی بعد از 60 ثانیه بشه 1 دقیقه یا بهد از 60 دقیقه بشه یک ساعت

arash201
شنبه 09 شهریور 1392, 11:17 صبح
سلام دوست عزیز کد زیر 100% کمکت می کنه
static int d1, d2, d3, d4, d5, d6;
private void timer1_Tick(object sender, EventArgs e)
{
d1++;
if (d1 == 10)
{
d1 = 0;
d2++;
}
if (d2 == 10)
{
d2 = 0;
d3++;
}
if (d3 == 10)
{
d3 = 0;
d4++;
}
if (d4 == 6)
{
d4 = 0;
d5++;
}
if (d5 == 10)
{
d5 = 0;
d6++;
}
if (d6 == 6)
{
d6 = 0;
}
label1.Text = "زمان سپری شده: " + d6.ToString() + d5.ToString() + ":" + d4.ToString() + d3.ToString() + ":" + d2.ToString() + d1.ToString();
}

pouria_bayat
شنبه 09 شهریور 1392, 11:24 صبح
سلام منم مدتی پیش همچین سوالی داشتم و به نتیجه رسیدم از این تایپیک استفاده کن:

http://barnamenevis.org/showthread.php?414049-%D9%85%D8%AC%D9%85%D9%88%D8%B9%D9%87-%D8%A7%DB%8C-%D8%A7%D8%B2-%D8%AA%D8%A7%DB%8C%D9%85%D8%B1%D9%87%D8%A7-%D8%AF%D8%B1-%DB%8C%DA%A9-%D9%81%D8%B1%D9%85.

sajadzare
شنبه 09 شهریور 1392, 11:31 صبح
جناب arash عزیز جواب داد ولی ثانیه شمار به جای اینکه بعد از 60 ثانیه تموم بشه و به دقیقه شمار اضافه کنه تا 100 میره بعد میشه یه دقیقه

mfaridi
شنبه 09 شهریور 1392, 11:34 صبح
خوب میتونی شرط بزاری که اگه 60 شد به دقیقه اضافه کنه
if(s==60)
{d++
s=0
}

sajadzare
شنبه 09 شهریور 1392, 11:37 صبح
درست شد . باید مقدار d2 رو وقتی برابر 6 میشه صفر کرد. توی اون کد وقتی 10 میشد صفر میکرد... منمون !