تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 6 از 6

نام تاپيک: تایمر

  1. #1
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    14 تایمر

    با عرض سلام
    من در ویژال یک تایمر به روش زیر ایجاد کردم می خواستم بدانم چطور می شود تایمر را قطع کرد؟
    در OnInitDialog() این کد رو می نویسم : (برای زمان یک ثانیه )
    SetTimer(1,1000,NULL)

    بعد در WM_Timer کد های لازم رو برای اجرا در هر ثانیه می نویسم
    ضمنا آیا راه بهتری برای ایجاد تایمر وجود داره ؟
    وسوال دیگه اینکه دربرنامه های مبتنی بر کادر تبادلی که توسط ویژال ایجاد می شود تابع OnInitDialog() در فایل cpp وجود دارد. اما زمانی که یک دیالوگ جدید در همین پروژه ایجاد می کنیم این تابع وجود ندارد و حتی در لیست توابعی که با wm شروع می شود نیست
    در ویژال سی 6 در قسمت messages این تابع وجود داشت اما در ویژال 2005 من نتونستم این تابع رو برای اضافه کردن پیدا کنم.
    ممکنه راهنمایی بدید ؟ ممنون میشم.

  2. #2
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    دوباره سلام.

    فرض کنیم برای فرم جدید شما کلاسی به نام CMyForm ایجاد کردین.
    در برگه ClassView روی این کلاس راست کلیک کرده و Properties رو انتخاب کنین :







    از برگه باز شده برای در اختیار داشتن Message ها روی شکل آن کلیک کنین تا لیست پیغام ها به شما
    نمایش داده شود :






    برای استفاده از توابع Override مثل OnInitDialog روی شکل آن کلیک کنین
    در شکل زیر :







    برای اضافه کردن یک تابع Override کافیه از لیست توابع اون رو انتخاب و از Combo ی کنار اون اسم
    تابع رو اضافه کنین :








    اما در مورد تایمر :
    برای متوقف کردن یک تایمر از تابع KillTimer استفاده کنین که یک آرگومان داره و اون هم ID تایمر مورد نظر
    شماست. برای ایجاد تایمر از روش های ++C میتونین استفاده کنین که در لینک زیر معرفی شدن :

    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]


    روش های دیگه هم وجود داره که مربوط به SDK و API میشن که پیچیده تر هست و ضنما شما باید
    با مقدماتی مثل Threading و همزمانی یا synchronixe و ... آشنا باشین.
    ولی ساده ترین راه استفاده از همین Event تایمر یعنی WM_TIMER هست.


    موفق باشین.

  3. #3
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    پيش فرض

    از دقت بالای شما در پاسخها تشکر می کنم
    فقط یک سوال کوچیک؟

    زمانی که برای یک object مثل دکمه یا edit text یک متغیر (از هر نوعی ) تعریف می کنیم اگه نیاز به حذف اون متغیر داشته باشیم در ویژوال 2005 دقیقا باید چکار کنیم ؟ چون در اونجا هیچ گزینه ای برای حذف اون متغیر وجود ندارد .

    ممنونم

  4. #4
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    دوباره سلام
    متاسفانه از گونه 2002 به بعد ویزاردی برای حذف وجود نداره.
    یا اگه هم وجود داره من تا حالا با اون برخورد نکردم.

    اما برای حذف یک متغییر باید به شکل زیر عمل کنین :


    1- از فایل h مربوط به کلاس Dialog :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


    2- از Constructor کلاس Dialog :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته در صورتی که Category یا نوعش Value باشه نه Control


    3- از تابع DoDataExchange

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


    موفق باشین.

  5. #5
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    پيش فرض

    با سلام

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


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    Last edited by cpplover; 14-01-2008 at 20:35.

  6. #6
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    دوست من!
    شما تنها در فایل h رو جستجو کردین. هر کلاس یک فایل h و یک فایل Cpp داره.

    فقط مورد اول که گفتم در فایل h هست ، مثلا MyTestDlg.h
    مورد دوم و سوم در فایل Cpp قرار دارن ، مثلا MyTestDlg.Cpp

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •