آموزش نرم‌افزار B4A(اندروید)و اتصال نرم‌افزار به آردوینو(قسمت دوم)

0
1252
اتصال نرم‌افزار به آردوینو
اتصال نرم‌افزار به آردوینو

مقدمه

در قسمت اول از “آموزش نرم‌افزار B4A (اندروید) و اتصال نرم‌افزار به آردوینو” به مواردی مثل B4A چیست، نصب نرم‌افزار و درنهایت آشنایی با محیط گرافیکی این نرم‌افزار هم پرداختیم، که منجربه ساخت یک نرم‌افزار شد. اما نرم‌افزاری که در قسمت قبل درست کردیم صرفا فقط یک محیط گرافیکی خالی بود که چند عکس در آن قرارگرفته‌بود و اگر روی آیکون‌ها کلیک می‌کردیم هیچ اتفاقی نمی‌افتاد. حالا در این قسمت می‌خواهیم به معرفی بخش‌های دیگری از نرم‌افزار B4A بپردازیم که در ادامه به این موارد اشاره می‌کنیم:

  • آشنایی با Event آیکون‌ها در نرم‌افزار B4A
  • آشنایی با Toastmessage در نرم‌افزار B4A
  • آشنایی با Msgbox2 در نرم‌افزار B4A
  • آشنایی با تعویض Activity ها با یک دیگر در نرم‌افزار B4A
  • آشنایی با دستور شرطی IF در نرم‌افزار B4A

آشنایی با Event آیکون‌ها در نرم‌افزار B4A

اگر از قسمت قبل خاطرتان باشد نرم‌افزاری را که نوشتیم فقط و فقط یک ظاهر گرافیکی داشت و درصورتیکه روی هرکدام از آیکون‌ها می‌زدیم هیچ اتفاق خاصی نمی‌افتاد. حال می‌خواهیم تابعی در نرم‌افزار B4A معرفی‌کنیم که دقیقا تشخیص می‌دهد که اگر روی هر آیکونی که تعریف‌شده‌است زده شد چه عملی را انجام‌دهد. برای اینکه بتوانیم این توابع را فراخوانی کنیم چند روش دارد که در این آموزش از ساده‌ترین حالت ممکن استفاده می‌کنیم. به تصویری که در ادامه می‌گذاریم دقت کنید.

تعریف event در نرم‌افزار B4A
تعریف event در نرم‌افزار B4A

 

همانطوری‌که در عکس مشاهده می‌کنید ابتدا روی آیکونی که در قسمت قبل تعریف کرده بودیم راست کلیک می‌کنیم و در قسمت Generate ایتدا باید آیکون موردنظر را تعریف‌کنیم که اینکار در این نرم‌افزارها با دستور Dim شروع می‌شود و درنهایت روی Event که مدنظر است کلیک می‌کنیم. زمانیکه کلیک کردیم در صفحه اول باید یک تابع تعریف‌شده‌باشد و درنهایت درون تابع موردنظر دستوری که می‌خواهیم را می‌نویسیم.

وقفه در نرم‌افزار B4A
وقفه در نرم‌افزار B4A

 

اگر به تصویربالا دقت‌کنید مشخص‌است که در محیط گرافیکی قسمت Click را انتخاب کرده‌ایم از کجا فهمیدیم؟ از قسمت آخر تابع که نوشته‌شده _Click متوجه‌شدیم هرچند که خودمان این تابع را تعریف کرده‌ایم اما اگر کد دیگری را هم بررسی می‌کردید به‌راحتی قادربودید که متوجه Event کد شوید. عملکرد تابع به این شکلی است که با فشردن کلید موردنظر کاری را که تعیین کرده‌اید انجام می‌دهد. که در اینجا می‌خواهیم دستور زیر را وارد کنیم و زمانی‌که کاربر کلیک‌کرد دستوری را که در ادامه می‌نویسیم به کاربر نمایش‌دهد.

Sub ON_Button_Click

ToastMessageShow("LED در حال روشن شدن است",True) 
End Sub

دستوری که در تابع‌بالا نوشته‌شده‌است، دستور Toast message show است که این دستور در قالب یک پیام کوتاه شناخته می‌شود. همانطورکه در تابع مشخص است این تابع دارای دو ورودی است. یکی نوشتن متن موردنظر و دیگری برای تعیین مدت زمان ماندگاری پیام است که طبق نیاز شما می‌تواند True یا False باشد. اگر True انتخاب شود مدت زمان ماندگاری پیام بیشتر خواهد بود و درغیر اینصورت ماندگاری پیام زمانیکه روی آیکون موردنظر کلیک می‌شود کمتر می‌باشد. خب تا این قسمت یادگرفتیم که چطور از این Event ها استفاده کنیم. حال اگر بخواهیم به مدت چندثانیه روی آیکون موردنظر دست خود را قرار دهیم باید چه کاری را انجام دهیم؟ دقیقا روند قبلی را باید طی کنیم با این تفاوت که باید روی LongClick کلیک کنیم. و درنهایت پس‌از اینکه تابع تعریف‌شد دستورات دلخواه خود را بنویسیم که می‌خواهیم دستور Msgbox2 را در تابع موردنظر بنویسیم. به دستوری که در ادامه می‌نویسیم دقت‌کنید.

Sub OFF_Button_LongClick
Dim result As Int
result = Msgbox2("انصافا دلت میاد LED به این خوشگلی رو خاموش کنی؟", "خاموش کردن LED", "خوبشم دلم میاد", "", "نه حقیقتا منصرف شدم", LoadBitmap(File.DirAssets, "simile.jpg"))
If result = DialogResponse.Positive Then 
ToastMessageShow("مرسی که هستی گلم",True)

Else If result=DialogResponse.NEGATIVE Then
ToastMessageShow("I LOVE YOU SO MUCH",True)

Else If result=DialogResponse.CANCEL Then
ToastMessageShow("",False) 
End If

End Sub

 

همانطوری‌که در کد مشخص‌شده‌است زمانیکه دست خود را به مدت چند‌ثانیه روی آیکون موردنظر قراردهیم وارد زیرمجموعه تابع می‌شویم که یک دستور Msgbox می‌باشد. تقریبا می‌توانیم به‌جرات بگوییم کسانی که گوشی هوشمند دارند حتما بارها با این تابع برخورد کرده‌اند اما متوجه آن نشده‌اند. به طور مثال اگر یک نرم‌افزار روی گوشی هوشمند خود نصب‌کرده‌باشید حتما بارها مشاهده کرده‌اید که هنگام خارج‌شدن از برنامه از شما چند سوال با مضمون زیر می‌پرسد. آیا مایل به خارج‌شدن از برنامه هستید؟ بله، خیر و درنهایت بعضی‌از آنها هم تصویری را در گوشه متن موردنظر قرار داده‌اند. و بسیاری‌از کارهای گرافیکی دیگر. چه کاربردی برای افراد الکترونیکی دارد؟ به‌طورمثال دستگاهی را طراحی کرده‌اید که یک کار بسیارحساس را انجام می‌دهد و کنترل دستگاه ازطریق گوشی است و این نرم‌افزار را هم شما طراحی کرده‌اید. زمانیکه که کاربر می‌خواهد دستگاه را ازطریق گوشی روشن کند و از آن استفاده‌کند می‌توانید در قالب در یک Msgbox پیام هشداری برای کاربر بنویسید و بسیاری‌از کارهای دیگر که بسته به نیاز شما متفاوت خواهد بود. حال در این قسمت ما هم دقیقا همین کار را انجام داده‌ایم البته به‌صورت کاملا Fun.

دقت‌کنید برای اینکه بدانید که هر تابع دارای چه ورودی‌هایی است و چگونه باید از آن استفاده‌کرد فقط کافیست که اول دستور موردنظر را در نرم‌افزار B4A بنویسید. و خود نرم‌افزار به‌صورت کاملا هوشمندانه دستور را برای شما به‌همراه مثال می‌آورد.

msgbox در نرم‌افزار B4A
msgbox در نرم‌افزار B4A

 

آشنایی با تعویض لایه‌ها با یک دیگر در نرم‌افزار B4

اگر آموزش قبلی را دنبال‌ کرده باشید در نرم‌افزار قبلی فقط یک لایه گرافیکی بیشتر نداشتم اما سوالی که پیش می‌آید این است که فقط در نرم‌افزار فقط یک لایه گرافیکی داریم؟ خیر بلکه هر چند لایه‌ای که شما می‌خواهید می‌توانید درست کنید. که در این آموزش هم در همین بخش می‌خواهیم زمانیکه روی آیکون سیسوگ زده شد وارد صفحه همکاری با سیسوگ شود(لایه‌ای که ما طراحی کردیم) برای این کار باید مراحل زیر را انجام‌دهیم. ایجاد یک لایه گرافیکی جدید با اسم Help برای این‌کار به آموزش قسمت قبل “آموزش نرم‌افزار B4A (اندروید) و اتصال نرم‌افزار به آردوینو” مراجعه‌کنید. دقت‌کنید پس‌از اینکه آموزش قسمت قبل را مشاهده‌کردید درهنگام نام‌گذاری حتما دقت‌کنید چون در اینجا مدنظرما Help است.

ایجاد یک صفحه کد جدید اصطلاحا یک Activity برای این‌کار طبق تصویری که در ادامه قرار می‌دهیم عمل کنید.

ایجاد یک Activity جدید در نرم‌افزار B4A
ایجاد یک Activity جدید در نرم‌افزار B4A

 

پس‌از اینکه یک Activity جدید ایجاد کردیم اسم آن را انتخاب می‌کنیم که انتخاب این اسم از اهمیت بسیارزیادی برخوردار است که در این آموزش اسم Activity را Help درنظر می‌گیریم.

ایجاد Activity جدید
ایجاد Activity جدید

 

نیازی نیست که حتما اسم لایه گرافیکی و Activity مثل یکدیگر باشد. ولی حتما هر اسمی را که انتخاب می‌کنید درجای خود قراردهید تا به مشکل نخورید. خب اگر دقت‌کنید در قسمت لایه “Help” باید بخش همکاری با سیسوگ را بنویسیم. برای این‌کار یک لایه گرافیکی جدید را باز می‎‌کنیم و یک Lable انتخاب می‌کنیم و در نهایت در قسمت Text متن همکاری با سیسوگ را در آن قرار می‌دهیم.

لایه گرافیکی در B4A
لایه گرافیکی در B4A

 

خب حالا نوبت به استفاده از این Activity است که چطور باید این کار را انجام دهیم. به کدی که در ادامه قرار می‌دهیم دقت کنید.

Sub ImageView_Sisoog_Click
Activity.Finish
StartActivity("Help") 

End Sub

خط اول Activity که در آن هستیم را می‌بندد و خط دوم وارد Activity جدید می‌شود. دقت‌کنید اگر می‌خواهید بین Activity های مختلف برنامه جابه‌جایی انجام‌دهید حتما Activity که در آن هستید را ببیندید چون درصورت بسته‌نشدن نرم‌افزار هنگ خواهد کرد. طبق معمول نوبت به دیدن نتیجه کاری‌است که انجام‌داده‌ایم.

 

اگر دقت‌کنید می‌بینید که بخشی از متن ناخوانا است و درست مشخص‌نشده‌است که ان‌شالله در قسمت‌های بعدی به این موضوع هم خواهیم‌پرداخت. امیدواریم که این موضوع هم برای شما مفید واقع‌شده‌باشد.

 

 

منبع: سیسوگ

مطلب قبلیرادیو آماتوری چیست و چرا به آن نیاز داریم؟(قسمت دوم–تجهیزات)
مطلب بعدیآموزش FPGA قسمت دوازدهم: توصیف عناصر حافظه (بخش اول)

پاسخ دهید

لطفا نظر خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید