View Full Version : تایمر
asadolah
یک شنبه 28 اسفند 1390, 15:56 عصر
سلام
تایمر چیه و تو ویژوال بیسیک چطور ازش استفاده می کنند؟ ممنون میشم اگه با یک تکه کد توضیح بدهید
MohammadGh2011
یک شنبه 28 اسفند 1390, 17:47 عصر
سلام عليکم
کنترل تایمر در جعبه اشیا وجود دارد و شکل یک ساعت را دارد. نام این شیء Timer می باشد.
خاصیت های مهم کنترل تایمر :
خاصیت Interval : فاصله ی زمانی بر حسب میلی ثانیه ( هر 1000 میلی ثانیه معادل 1 ثانیه میباشد ) .
خاصیت Enable : جهت فعال و غیر فعال کردن کنترل تایمر .
خاصیت Name : جهت تعویض نام کنترل ( به صورت پیش فرض Timer1 است ).
اين کنترل دستورات شما را هر چند بار که شما مشخص ميکنيد انجام ميدهد.
چند مثال براتون مينويسم:
مثال1)مثال زير باعث ميشود که برنامه بعد از 20 ثانيه به پايان رسد:
يک تايمر روي فورمتون اضافه کنيد با اينتروال 20000 که بعد از 20 ثانيه انجام بده ، بعد هم کد END را درون تايمر بنويسيد.
===============================
مثال 2)يک تايمر روي فورمتون اضافه کنيد با اينتروال 1000 و بعلاوه يک Label و کپشن اون ليبل رو برابر با 1 کنيد و بعد هم کد زير رو درون تايمر بنويسيد:
Label1.Caption = Label1.Caption + 1
اين کد باعث ميشه هر 1 ثانيه به يک اضافه بشه
البته اين رو هم بگم تا بدونيد که اين کنترل(Timer)محدود ميباشد.
اميدوارم که اين کنترل رو به خوبي ياد گرفته باشيد
موفق باشيد
asadolah
دوشنبه 29 اسفند 1390, 06:42 صبح
خاصیت Interval : فاصله ی زمانی بر حسب میلی ثانیه ( هر 1000 میلی ثانیه معادل 1 ثانیه میباشد ) .به فرض اینکه تایمر فعال باشه اگر اینتروال یک تایمری مثلا 1000 باشه آیا به معنی هست که از شروع برنامه بطور مرتب هر یک ثانیه یکبار برنامه این تایمر را فراخوانی و دستورات داخل آن را انجام می دهد؟ منظورم مبدا این فاصله زمانی است.
اين کنترل دستورات شما را هر چند بار که شما مشخص ميکنيد انجام ميدهد.این چند بار رو کجا باید تعریف کنیم؟
از همیاری شما دوست عزیزم متشکرم
naghshineh m&h
دوشنبه 29 اسفند 1390, 11:26 صبح
سلام شما می تونید در تایمرتون از یک شمارنده برای انجام این کار استفاده کنید برای مثال بعد از بیست ثانیه نرم افزار را ببند یا هر دستور دیگری
کد مثال را برای شما می گذارم
static int i;
private void timer1_Tick(object sender, EventArgs e)
{
i = i + 1;
textBox1.Text = i.ToString();
if (i == 20)
{
Close();
}
محسن واژدی
دوشنبه 29 اسفند 1390, 14:11 عصر
به فرض اینکه تایمر فعال باشه اگر اینتروال یک تایمری مثلا 1000 باشه آیا به معنی هست که از شروع برنامه بطور مرتب هر یک ثانیه یکبار برنامه این تایمر را فراخوانی و دستورات داخل آن را انجام می دهد؟ منظورم مبدا این فاصله زمانی است.
سلام
بله مگر اینکه دستوراتی را برای جلوگیری از این امر تعریف کرده باشیم
این چند بار رو کجا باید تعریف کنیم؟
محدوده ی تکرار را با دستوراتی که تعریف کرده ایم مشخص میکنیم، به عنوان مثال اگر کد زیر را در ابتدای تایمر تعریف کنیم:
Private Sub Timer1_Timer()
Static iNum%
iNum% = iNum% + 1
If iNum% >= 10 Then Timer1 = False
Caption = "Current number: " & iNum%
End Sub
همزمان با رسیدن مقدار متغیر iNum به 10 تایمر متوقف میشود
موفق باشید
MohammadGh2011
دوشنبه 29 اسفند 1390, 21:28 عصر
سلام شما می تونید در تایمرتون از یک شمارنده برای انجام این کار استفاده کنید برای مثال بعد از بیست ثانیه نرم افزار را ببند یا هر دستور دیگری
کد مثال را برای شما می گذارم
static int i;
private void timer1_Tick(object sender, EventArgs e)
{
i = i + 1;
textBox1.Text = i.ToString();
if (i == 20)
{
Close();
}
سلام عليکم
کد هايي که قرار داديد به زبان سي شارپ ميباشد ،اينجا تالار VB6 است.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.