خوب دوباره سلام و شروع می کنیم آموزش رو
کد:
Message("Any Message String here ...","VARIABLE")
این دستور یه پیغام رو به کاربر نشون می ده که فقط یه دکمه ok بیشتر برای جایی استفاده می شه که قصد دارین یه پیغام رو یه کاربر بدین
در قسمت Any Message String here ... شما متنی که می خواین رو می تونین مستقیم تایپ کنین
در قسمت VARIABLE هم می تونین از متغییر استفاده کنین و از دو دو نوع متغییر ریشه ای و عددی می تونین استفاده کنین
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
کد:
MessageEx("Title","text, flag[, timeout]")
و اما این دستور که یه دستور سخت و کاربردیه البته تو کار هایی که بیشتر قصد دارین از کاربر اطلاعات بگیربن تا بد بتونین از اون اطلاعات استفاده کنین برای اجرای ادامه برنامه
قسمت title که مشخصه و عنوان پنجره پیغام رو تو تایپ می کنین در این قسمت
قسمت text که باز هم مشخصه و متن داخل پیغام رو می نویسین و در واقع سوال یا پیغامی که می خواین به کاربر بدین رو تو این قسمت تایپ می کنین
قسمت flag این قسمت میشه گفت اصل کاره این دستور هست که تو همین پست یه توضیح کامل قسمت های اون می پردازیم
قسمت timeout این قسمت هم مشخص می کنه اگر کاربر روی دکمه ای کلید نکرد پنجره بسته بشه ( در این قسمت به واحد زمانی خیلی توجه کنین )
توجه کنید که علامت ها , که وسط کد ها هست برای جدا کردن پارامتر های مختلف تابع هستن و باید حتما بزارید این علامت ها رو تا تایع درست اجرا بشه
توضیحات flag :
اول یه توضیح مختصر می دم بعد می رم سراغ توضیحات کامل تو این قسمت شما تعیین می کنین که این پیغام که می دین چه دکمه هایی داشته باشه و این که دکمه ها چیا باشن و غیره و بعد از این که کاربر روی یکی از این دکمه ها کلیک کرد یه مقداری رو تو یه cbk ذخیره می کنه که شرط ها رو با استفاده از اون cbk می زارین و قبلش باید اون cbk رو داخل یک متغییر از نوع عددی بریزید و اون cbk این هست CBK_MsgEx و برای این که این رو تو یه متغییر بریزید از کد زیر باید استفاده کنین
من تو خط بالا مقدار اون رو داخل متغییر عددی به نام A ریختم که بعد اون رو تو شرط ها ازش استفاده می کنین
نکته : اگر کاربر رو هیچ کدوم از دکمه ها کلیک نکنه و وقتی که تعیین کردین تموم بشه مقدار CBK_MsgEx برابر عدد 1- خواهد بود. حالا یه سری مقدار رو بهتون می گم که وقتی کاربر روی هر دکمه ای کلیک کرد مقدار خاص خودش رو بر می گردونه
اگر کاربر روی دکمه ok کلیک کنه مقدار 1 رو بر می گردونه و تو این مثالی که من زدم مقدار متغییر A برابر صفر می شه
اگر کاربر روی دکمه CANCEL کلیک کنه مقدار 2 رو بر می گردونه
اگر کاربر روی دکمه ABORT کلیک کنه مقدار 3 رو بر می گردونه
اگر کاربر روی دکمه RETRY کلیک کنه مقدار 4 رو بر می گردونه
اگر کاربر روی دکمه IGNORE کلیک کنه مقدار 5 رو بر می گردونه
اگر کاربر روی دکمه YES کلیک کنه مقدار 6 رو بر می گردونه
اگر کاربر روی دکمه NO کلیک کنه مقدار 7 رو بر می گردونه
اگر کاربر روی دکمه TRY AGAIN کلیک کنه مقدار 10 رو بر می گردونه
اگر کاربر روی دکمه CONTINUE کلیک کنه مقدار 11 رو بر می گردونه
حالا شاید یه سوال براتون پیش بیاد اونم این که اصلا ما چه جوری مشخص کنیم که پیغاممون چه دکمه هایی داشته باشه و یا آیکون پیغاممون چی باشن ؟
خوب منم بهتون جواب می دم که عجله نکنین و کمی صبور باشین :دی الان براتون توضیح می دم اول مقادیر رو توضیح می دم بعدش هم طرز کار با اون رو میگم براتون
اگر بخواین که دکمه های پیغامتون رو مشخص کنین باید مقدار flag رو با توجه به توضیحاتی که می دم تعیین کنین
دکمه ok <= مقدار صفر
دکمه OK and Cancel<= مقدار 1
دکمه Abort, Retry, and Ignore<= مقدار 2
دکمه Yes, No, and Cancel<= مقدار 3
دکمه Yes and No<= مقدار 4
دکمه Retry and Cancel<= مقدار 5
دکمه Cancel, Try Again, Continue<= مقدار 6
حالا برای مشخص کردن آیکونی که تو پیغام نمایش داده میشه
بدون آیکون <= مقدار صفر
آیکون stop sign<= مقدار 16
آیکون Question mark<= مقدار 32
آیکون Exclamation mark<= مقدار 48
آیکون یه i تو یه دایره <= مقدار 64
خوب حالا وقتی پنجره باز می شه معمولا یه دکمه به عنوان پیشفرض (default) هستش
اولین دکمه به عنوان پیشفرض <= مقدار صفر
دومین دکمه به عنوان پیشفرض <= مقدار 256
سومین دکمه به عنوان پیشفرض <= مقدار 512
خوب حالا اگر بخواین که رو تایتل بیشتر کار کنین تنظیمات و مقادیر زیر رو هم باید یاد بگیرید
پیشفرض <= مقدار صفر
آیکونی که انتخاب کردین کنار title نمایش داده بشه <= مقدار 4096
اگر بخواین که جای قرار گیری تایتل و نوشته ها رو جا به جا کنین باید از مقادیر زیر استفاده کنین
حالت پیشفرض <= مقدار صفر
اگر بخواین متن ها و تایتل سمت راست قرار بگیرن <= مقدار 524288
هوب دیگه مقدار گویی ها تموم شد :دی ( آخیش ... دیگه داشت حوصلم سر می رفت :دی )
خوب حالا می ریم سره این که اصلا از اینا چه جوری استفاده کنیم
ااااااااااااااااااااااااا ااااااااااااااااااااااااا ااا چه قدر مقداره :دی کی م خواد اینارو حفظ کنه :دی
باید یادتون باشه که این مقدار ها خیلی مهم هستن و اگه یکی شو اشتباه وارد کنین کل کدتون فنا می شه و تنتیجه دلخواه رو بهتون نمیده
طرز کار رو با یه مثال توضیح می دم که فک کنم این جوری بهتر باشه یادگیری
کد:
Title$ = 'GraphicPlanet'
Text$ ='aya GP ye site tope amozeshie ?'
Flag= 4 + 256
Params$ = Text$+','+CHAR(Flag)
MessageEx("Title$","Params$")
توضیح : خوب همون جور که می بینین من سعی کردم از متغییر استفاده کنم تا این که کد گیج کننده نباشه
Title$ و Text$ که مشخصه خوب خط سوم یا همون متغییر عددی Flag تو این جا من فقط از دو تا عدد استفاده کردم که عدد 4 برابر تعداد دکمه ها و نوع اون هست که تو این مثال دکمه YES و NO هستن ( بسته به نوع سوال و پیغام دکمه های خودتون رو انتخاب کنین )و اون عدد 256 هم که نشون می ده دکمه دوم به عنوان پیش فرض باشه و دقت کنین که هر امکانی که بخواین به پیغامتون اضافه کنین باید کد و مقدار مربوط به اون رو به شکلی که تو مثال بالا گفتم اضافه کنین و اون رو با بقیه جمع کنین وقتی این ها رو جمع می کنین یعنی در واقع مقدار های مختلف رو با هم جمع که می کنین هر اعدادی به دست میاد که قبلا برای برنامه تمام حالت های مختلف تعریف شده و شما ترسی نداشته باشن :دی کدتون اگر درست نوشته باشین حتما درست اجرا می شه
اما خط چهارم تمام متغییر های قبلی رو به جز تایتل می ریزه تو یه متغیر تا به راحتی بشه ازش استفاده کرد
نکته : (البته نمی خواستم این رو این جا توضیح بدم چون بهش نرسیدیم ولی خوب چون تو این مثال بود مجبورم توضیح بدم و بعدا بیشتر در موردش صحبت می کنیم ) عبارت CHAR() که می بینید برای ریختن مقدار یه متغییر عددی تو یه متغییر رشته ای هست اگر این عبارت رو نزارین و بخواین مقدار متغییر Flag که از نوع عددی هست رو داخل یه متغییر رشته ای بریزید برنامه بهتون پیغام می ده که کدتون اشتباه هست و لطفا تصحیحش کنین
و اما خط آخر هم که دستور MessageEx هست که پیغام رو نمایش می ده