نمایش نتایج 1 تا 9 از 9

نام تاپیک: متوقف کردن Timer بعد از اجرا

  1. #1

    متوقف کردن Timer بعد از اجرا

    سلام خسته نباشید


    من تو برنامم از timer استفاده کردم

    ولی نمیدونم چطور اونو بعد از انجام کارش متوقف کنم

    کارش هم این هست که وقتی یه متنی در قبلا تکست باکس قرار گرفت اون متنو بگیره تو فایل تکست تو مسیری ذخیره کنه

    بعد این همین طور هی میسازه

    چجور بعد از اولین اجرا متوقفش کنم ؟

  2. #2
    کاربر دائمی
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    ایران
    پست
    372

    نقل قول: متوقف کردن Timer بعد از اجرا

    نقل قول نوشته شده توسط rooterror مشاهده تاپیک
    سلام خسته نباشید


    من تو برنامم از timer استفاده کردم

    ولی نمیدونم چطور اونو بعد از انجام کارش متوقف کنم

    کارش هم این هست که وقتی یه متنی در قبلا تکست باکس قرار گرفت اون متنو بگیره تو فایل تکست تو مسیری ذخیره کنه

    بعد این همین طور هی میسازه

    چجور بعد از اولین اجرا متوقفش کنم ؟
    سلام

    بدون تایمر هم میشه اینکارو کرد

    میتونی کدهای مربوطه را در رویداد TextChanged تکست باکس قرار بدی

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
    //کد مورد نظر
    }


  3. #3
    کاربر دائمی آواتار group45
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    کرمان
    سن
    36
    پست
    549

    نقل قول: متوقف کردن Timer بعد از اجرا

    نقل قول نوشته شده توسط 336699 مشاهده تاپیک
    سلام

    بدون تایمر هم میشه اینکارو کرد

    میتونی کدهای مربوطه را در رویداد TextChanged تکست باکس قرار بدی

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
    //کد مورد نظر
    }

    با سلام این کار اشتباه است چون با هر بار که تغییری در متن رخ دهد یک فایل جدید ساخته می شود یعنی حداقل به تعداد کاراکترهای متنتون شما فایل می سازید.
    شما یه سرچ همینجا بزن و دنبال ایجاد فایل متنی باش. حتما به جواب میرسی.

  4. #4
    کاربر دائمی
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    ایران
    پست
    372

    نقل قول: متوقف کردن Timer بعد از اجرا

    نقل قول نوشته شده توسط group45 مشاهده تاپیک
    با سلام این کار اشتباه است چون با هر بار که تغییری در متن رخ دهد یک فایل جدید ساخته می شود یعنی حداقل به تعداد کاراکترهای متنتون شما فایل می سازید.
    شما یه سرچ همینجا بزن و دنبال ایجاد فایل متنی باش. حتما به جواب میرسی.
    این کد ، با فرض اینکه متن مورد نظر قبلا بصورت کامل ایجاد شده و در تکست باکس قرار گرفته درست کار میکنه

    ولی اگر کاربر بخواهد متن را تایپ کند ، این روش جواب نمی دهد

    در هر صورت ملت علم غیب ندارن که ، اون شخصی که سوال پرسیده منظورش چیه و دقیقا میخواد چیکار بکنه

    به هر حال این روش از تایمر بهتره

  5. #5

    نقل قول: متوقف کردن Timer بعد از اجرا

    بله متاسفانه در هر دو صورت برنامه دچار هنگ میشه و هی اون کد تایمر اجرا میشه و فایل به دفعات خیلی زیاد ساخته میشه


  6. #6

    نقل قول: متوقف کردن Timer بعد از اجرا

    از رویدادهای textbox و ... استفاده کنید. استفاده از تایمر برای این کار چندان جالب نیست. البته نگفتید چرا و چه زمانی نیاز به اینچنین چیزی دارید؟

  7. #7

    نقل قول: متوقف کردن Timer بعد از اجرا

    همون طور که گفتن بهتره که از اونت های تکست باکس استفاده کنید.
    در مورد تایمر هم میشه آتوریست رو غیر فعال کرد که به این ترتیب فقط یکبار اجرا میشه:

    var timer = new System.Timers.Timer (5000) { AutoReset = false };
    timer.Elapsed += delegate { timer.Dispose();Save(TextBox.Text); };
    timer.Start();

  8. #8
    کاربر دائمی آواتار group45
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    کرمان
    سن
    36
    پست
    549

    نقل قول: متوقف کردن Timer بعد از اجرا

    نقل قول نوشته شده توسط 336699 مشاهده تاپیک
    این کد ، با فرض اینکه متن مورد نظر قبلا بصورت کامل ایجاد شده و در تکست باکس قرار گرفته درست کار میکنه

    ولی اگر کاربر بخواهد متن را تایپ کند ، این روش جواب نمی دهد

    در هر صورت ملت علم غیب ندارن که ، اون شخصی که سوال پرسیده منظورش چیه و دقیقا میخواد چیکار بکنه

    به هر حال این روش از تایمر بهتره
    دوست عزیز شما یه ایونت اضافه کردید که اگه تغییری در متن تکست باکس داده شد فعال بشه
    حالا میشه به من بگید چطور این اجرا بشه زمانی که متن کامل نوشته شد.
    تو برنامه نویسی اگه با یکسری فرضیات بخواید برنامتون رو بنویسید مطمئن باشید برنامتون پر اشکال و باگه.

  9. #9
    کاربر دائمی آواتار _behnam_
    تاریخ عضویت
    مهر 1389
    محل زندگی
    سونای ایران ( بوشهر )
    پست
    971

    نقل قول: متوقف کردن Timer بعد از اجرا

    سلام. روشی که جناب 336699 فرمودند بهتر از تامیر هستش.
    دوست عزیز شما یا باید از رویداد TextChanged و اگر تعداد کنترل های فرم زیاد هست و مطمعن هستید ک کاربر فوکاس کنترل رو تغییر میده رویداد Leave پیشنهاد میده. در ضمن رویداد های فرم هم هست ک میتونید از اون ها استفاده کنید.
    ولی با این حال قراره یه خط کد اجرا بشه و میتونید خودتون رو راحت کنید و از رویداد TextChanged استفاده کنید که هیچ مشکلی نداره.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •