PDA

View Full Version : میلی ثانیه در تایمر



find code
سه شنبه 15 اسفند 1391, 11:49 صبح
دوستان چه طورمیشه میلی ثانیه رو توتایمر محاسبه کرد؟

c-sharp_South
سه شنبه 15 اسفند 1391, 12:10 عصر
محاسبه کرد یعنی چی ؟
هر 1000 اینتروال مساوی 1 ثانیه است.
اگه Interval = 1 قرار بدید میشه 0/001 ثانیه.

pedram.11
سه شنبه 15 اسفند 1391, 12:10 عصر
چیشو محاسبه کرد؟ هر ثانیه هزار میلی ثانیه هست دیگه

find code
سه شنبه 15 اسفند 1391, 12:36 عصر
ببینید دوستان من یه برنامه نوشتم که سرعت عکس العمل افراد رو نسبت به تغییر رنگ میسنجه.یعنی هر وقت رنگ عوض شد من استارت تایمرو میزنم.وقتی که کاربر دوباره کلیک میکنه تایمر متوقف میشه ومن از روی اینترول تایمر عکس العمل فراد رو میفهمم.حالا میخوام ببینم علاوه بر اینکه ثانیه رو نشون میده میتونه میلی ثانیه رو هم نشون بده

pedram.11
سه شنبه 15 اسفند 1391, 12:43 عصر
یک کرنومتر بسازید، به اینصورت که اگه میخواهید بادقت میلی ثانیه تشخیص بده زمان مکث تایمر رو 1 قرار بدید و یک متغیر عددی بذارید که با هر تیک یک واحد به اون زیاد شه، و با استارت تایمر مدت زمان سپری شده در اون ذخیره میشه.

find code
سه شنبه 15 اسفند 1391, 12:50 عصر
ببخشید من درست متوجه نشدم.ممکنه آی دی تون رو به من بدین

pedram.11
سه شنبه 15 اسفند 1391, 13:14 عصر
آیدی چیو؟
بیا یه اینو چک کن
100905

find code
سه شنبه 15 اسفند 1391, 13:22 عصر
منظوزم ایمیلتون بود
چرا اینترول رو روی 100 گداشتین؟
مگه نباید روی 1 باشه که یعنی میلی ثانیس؟

مهرداد صفا
سه شنبه 15 اسفند 1391, 13:27 عصر
با سلام.
کد زیر فاصله بین دو کلیک روی فرم را بر حسب میلی ثانیه و بدون تایمر نمایش می دهد:

//in the name of god
//صل الله علی محمد و آله

using System;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();

}
int LastClickTime = 0;//the time in milli second of last click...
private void textBox2_Click(object sender, EventArgs e)
{
if (LastClickTime != 0)
{
string message = "the last click was " + (System.Environment.TickCount - LastClickTime).ToString() + "MilliSeconds ago.";
LastClickTime = Environment.TickCount;
MessageBox.Show(message);
}
else
{
LastClickTime = Environment.TickCount;
}
}
}
}

find code
سه شنبه 15 اسفند 1391, 13:34 عصر
ممنونم ازکدتون ولی من فاصله بین کلیک رو 2 تا دکمه رو میخوام

find code
سه شنبه 15 اسفند 1391, 13:40 عصر
آقای pedram.11 ممنون از کدتون .بله همونی بود که میخواستم........ولی تو تبدیلش به ثانیه مشکل دارم.
چون میخوام زمان رو هم یه ثانیه و هم دهم ثانیه نشون بده
کد زیر رو نوشتم ولی درست جواب نمیده

int second =Convert .ToInt32 ( (timeSpent) / 1000);
long milisecond = (timeSpent) % 1000;

find code
سه شنبه 15 اسفند 1391, 14:20 عصر
دوستان لطفا پاسخ بدین
از یه مشت میلی ثانیه چه طور ثانیه و دهم ثانیه رو بکشم بیرون

pedram.11
سه شنبه 15 اسفند 1391, 14:42 عصر
شما وقتی مقداری رو به ثانیه تدیل کردی باید مابقی رو به دهم ثانیه تبدیل کنی نه دوباره کل مقدارو:
int second =Convert .ToInt32 ( (timeSpent) / 1000);
int dsecond = (timeSpent - second * 1000) / 100;

find code
سه شنبه 15 اسفند 1391, 15:11 عصر
https://www.dropbox.com/c/shmodel?nsid=232536725&sjid=0&state=2&signature=90c03c5&path=/WindowsFormsApplication1.rar&id=shmodel

لطفا خودتون ببینید ایرادشو بگین....................ممنوم

pedram.11
سه شنبه 15 اسفند 1391, 15:37 عصر
لطفا لینک مستقیم بدید، نیاز به سورس نیست، شما کدی که دادم رو تست کنید اگه نتیجه ناموفق بود خبر بدید

find code
سه شنبه 15 اسفند 1391, 15:41 عصر
منظور شما رو از لینک نمیفهمم......کد هم ناموفق بود وگرنه دوباره نمیپرسیدم ....واسه همین کلشوفرستادم....گفتم شاید تو قسمت های دیگه مشکلی باشه.......زیاد وقت نمیگرفت.

pedram.11
سه شنبه 15 اسفند 1391, 16:06 عصر
دستور:
label1.Text = timeSpent.ToString() + " MiliSeconds";
رو به:
long seconds = timeSpent / 1000;
long dseconds = (timeSpent - seconds * 1000) / 100;
label1.Text = seconds.ToString() + " and 0." + dseconds.ToString() + " Seconds";
تغییر بدید

خودم الان تست کردم رفتم جایی 80 و 0.5 ثانیه طول کشید!

find code
سه شنبه 15 اسفند 1391, 16:11 عصر
جواب رو اشتباه میده..... 2ثانیه رو248 ثانیه و میلی ثانیه رو همیشه 0 اعلا م میکنه.....
مقدار پیش فرض اینترول باید چند باشه؟

pedram.11
سه شنبه 15 اسفند 1391, 16:25 عصر
بفرمائید این هم با دقت میلی ثانیه که هم ثانیه هم دهم ثانیه و هم صدم ثانیه رو نشون میده:
100927

pedram.11
سه شنبه 15 اسفند 1391, 16:43 عصر
بعضی وقتا اگه آدم هنگ کنه مجبوره لقمه رو 3 دور بپیچونه دور خودش
کدی که دوستمون M.safa نوشتن خیلی بهتره و زمان سپری شده خودش آماده هست کافیه دستورای تبدیل زمان رو بنویسید
فایل رو آماده کردم از این استفاده کنید خیلی بهتره:
100928

find code
سه شنبه 15 اسفند 1391, 16:46 عصر
حالا چرا این قدر منت؟ من کد آماده خواستم؟؟؟؟؟؟؟؟؟
واقعا ممنون....مرسی که وقت گذاشتین

find code
سه شنبه 15 اسفند 1391, 16:56 عصر
M.safa
ازتون ممنونم........مرسی

pedram.11
سه شنبه 15 اسفند 1391, 17:17 عصر
حالا چرا این قدر منت؟ من کد آماده خواستم؟؟؟؟؟؟؟؟؟
واقعا ممنون....مرسی که وقت گذاشتین

دوست عزیز این که گفتم هنگ و لقمه رو سه دور میپیچونه منظور خودم بودم که راه رو طولانی کرده بودم و با کد دوستمون M.safa یادم اومد که خودمون یجایی همین زمان رو داریم و نیاز به timer نیست، بنده جسارت نکردم، بنده وظیفم میدونم چیزی که بلدم رو به بقیه هم بگم شاید بتونه کمکی باشه همونطوری که دوستان کمکمون میکنن
موفق باشید