View Full Version : شمارشگر معکوس
pouya1999best@g
چهارشنبه 05 شهریور 1393, 11:39 صبح
سلام؛
من در حال توسعه سورس شمارشگر معکوس هستم.(قرار گرفته شده در تاپیک برنامه های کوچک و مفید توسط مدیر محترم بخش)
اما به یک مشکل برخوردم و میخواهم کمکم کنید.
میخواهم ساعت مثلا بجای 1:9 بشه 01:09 یا مثلا 4:16 بشه 04:16
Mori Bone
چهارشنبه 05 شهریور 1393, 11:47 صبح
بعد از کاهش چک کنید ببینید که اگه عدد از 10 کمتر بود یا طولش مساوی 1 بود تبدیلش کنه به رشته و یه صفر کنارش بگذاره
pouya1999best@g
چهارشنبه 05 شهریور 1393, 11:58 صبح
مشکلم اینه که ممکنه هم ساعت و دقیقه نیاز به صفر داشته باشه؛مثل 1:9 که باید بشه 01:09
Mori Bone
چهارشنبه 05 شهریور 1393, 12:01 عصر
این دو عدد رو از هم جداکنید خوب. بعد روش پردازش کنید. من جاوا بلد نیسم ولی اگه کد رو با سی شارپ بخواین مشکلی نیس. فکر کنم جاوا splite داشته باشه:متفکر:
pouya1999best@g
چهارشنبه 05 شهریور 1393, 12:05 عصر
من خودمم زیاد بلد نیستم؛
واسه همین سوال پرسیدم!!!
Mori Bone
چهارشنبه 05 شهریور 1393, 12:09 عصر
کد با سی شاپ بدم می تونید تبدیلش کنید؟
pouya1999best@g
چهارشنبه 05 شهریور 1393, 12:20 عصر
:لبخند:نوچ:لبخند:
pouya1999best@g
چهارشنبه 05 شهریور 1393, 12:22 عصر
if(seconds >= 10 || minutes >= 10){
از این استفاده کردم نشد:ناراحت:
Mori Bone
چهارشنبه 05 شهریور 1393, 12:27 عصر
شما که اشتباه نوشتید که علامت بزرگتر گذاشتید برعکسش کنید. اگه کوچکتر یا مساوی از 9 بودن یا فقط کوچکتر از 10(نه مساوی 10) بودن
pouya1999best@g
چهارشنبه 05 شهریور 1393, 13:15 عصر
فقط خواستم شرط رو نشون بدم؛وگر نه اینو میدونم!!!
اما فکر کنم اشکال از || باشه.
نظری داری؟؟؟
Mori Bone
چهارشنبه 05 شهریور 1393, 13:22 عصر
int second = 1 , minute = 50;
string totalSecond , totalMinute;
if(second < 10) totalSecond = "0" + second.toString();
if(minute < 10) totalMinute = "0" + minute.toString();
pouya1999best@g
چهارشنبه 05 شهریور 1393, 13:32 عصر
به نظرم اشتباهه
Mori Bone
چهارشنبه 05 شهریور 1393, 13:35 عصر
به نظرم اشتباهه
چیش اشتباه؟:چشمک:
این به نمونه با سی شارپه
pouya1999best@g
چهارشنبه 05 شهریور 1393, 14:00 عصر
int in1 = 1;
int in2 = 1;
if(seconds < 10){
in1 = 6;
}
if(minutes < 10){
in2 = 7;//null
}
if(seconds >= 10){
in1 = 9;//null
}
if (minutes >= 10){
in2 = 8;
}
tv.setText(in1 + Integer.toString(minutes) + ":" + in2 + Integer.toString(seconds));
البته همگی باید صفر باشن بجز اونایی که کنارشون کامنت هست
اون هایی که کنارشون کامنت گذاشتم باید خالی باشن و چیزی به اعداد اضافه نکنن؛از چی استفاده کنم که خالی باشن؟؟؟
ویرایش:کد من تقریبا اشتباهه!!!
pouya1999best@g
چهارشنبه 05 شهریور 1393, 14:21 عصر
کد من:
tv.setText(/*in1 +*/ Integer.toString(minutes) + ":" + /*in2 +*/ Integer.toString(seconds));
Mori Bone
چهارشنبه 05 شهریور 1393, 14:24 عصر
2دقیقه صبر کنید کده کامل رو می گذارم.
فقط ثانیه و دقیقه یا ساعت هم می خواین
pouya1999best@g
چهارشنبه 05 شهریور 1393, 14:38 عصر
این گذاشتم وقتی روی دکمه شروع تایمر میزنم مینویسه
00null
ویرایش:حل شد
omid.n1990
چهارشنبه 05 شهریور 1393, 14:52 عصر
آقا بی خیال!!!!!!:)
کی میره این همه راه رو ! :) چرا خودتون رو خسته میکنید اونم با شرط و ... . از String.Format استفاده کنید تا متن خروجی رو براتون قالب بندی کنه.
تقریبا همچین فرمتی، تست کنید:
result =string.Format("{0:##}:{1:##}:{2:##}", hours, minutes, seconds);
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.