رفتن به مطلب

آموزش keypad مجازی


lvlostafa7

ارسال‌های توصیه شده

سلام دوستان

توی این آموزش میخوام نحوه ایجاد یک keypad مجازی رو آموزش بدم

در مرحله اول باید قسمت دیزاین رو آماده کنید که من عکس مربوط به این قسمت رو واستون میزارم

[ATTACH=CONFIG]371[/ATTACH]

خوب همه چی تغریبا واضحه فقط این نکته رو در نظر داشته باشید که باتن ها همگی درون یک پنل هستند

یک سری خاصیت درون باتن ها باید تغییر کنه که به شرح زیره

Name: این قسمت حتما نام مناسبی برای باتن ها انتخاب کنید

EventName : برای رویداد این باتن یک نام مناسب انتخاب کنید

Tag : این قسمت برای هر باتن یک نام مناسب انتخاب کنید

خاصیت EventName برای تمام باتن ها نامی مشترک انتخاب کنید

خاصیت Tag برای هر باتن یک نام خاص است مثلا از 0 تا 9 را برای 10 باتن انتخاب کنید

خوب حالا میریم به بخش کد نویسی و توی قسمت Sub Globals کد های زیر رو مینویسم

[left][color="#0000FF"]Sub Globals[/color]
Dim [color="#800080"]btnOk[/color] As [color="#40E0D0"]Button[/color]
Dim [color="#800080"]lblComment [/color]As [color="#40E0D0"]Label[/color]
Dim [color="#800080"]lblNumber1 [/color]As [color="#40E0D0"]Label[/color]
Dim [color="#800080"]lblNumber2 [/color]As [color="#40E0D0"]Label[/color]
Dim [color="#800080"]lblResult [/color]As [color="#40E0D0"]Label[/color]
Dim [color="#800080"]Number1[/color],[color="#800080"]Number2 [/color]As [color="#40E0D0"]Int[/color]
[color="#0000FF"]End Sub[/color][/left]

توی این قسمت متغیر های مورد نیاز رو تعریف کردیم

خوب حالا یک متد باید بنویسیم و نام متد رو همون اسمی میزاریم که برای EventName گذاشته بودیم


[left]
[color="#0000FF"]Sub [/color]btnEvent_Click
Dim send As [color="#40E0D0"]Button[/color]
send = [color="#0000FF"]Sender[/color]
[color="#0000FF"]Select [/color]send.Tag
[color="#0000FF"]Case [/color]"[color="#FF0000"]BS[/color]"
If [color="#800080"]lblResult[/color].Text.Length > [color="#800080"]0[/color] [color="#0000FF"]Then[/color]
[color="#800080"]lblResult[/color].Text = [color="#800080"]lblResult[/color].Text.SubString2([color="#800080"]0[/color],[color="#800080"]lblResult[/color].Text.Length-1)
[color="#0000FF"]End If[/color][color="#0000FF"]
Case Else[/color]
[color="#800080"]lblResult[/color].Text = [color="#800080"]lblResult [/color]+ send.Text
[color="#0000FF"] End Select[/color]
[color="#0000FF"]If[/color] [color="#800080"]lblResult[/color].Text.Length = 0 Then
[color="#800080"]btn0[/color].Visible = [color="#0000FF"]False[/color]
[color="#0000FF"]Else[/color]
[color="#800080"]btn0[/color].Visible = [color="#0000FF"]True[/color]
[color="#0000FF"]End If[/color]
[color="#0000FF"]End Sub[/color]
[/left]



این متد برای بررسی این هستش که کدام باتن کلیک شده ، در اول کار یک متغیر از موع باتن تعریف میکنیم و مقدار Sender رو که اطلاعات باتن کلیک شده درونش قرار داره رو به اون منتقل میکنیم

سپس با استقاده از دستور Select Case خاصیت Tag که در هر باتن منحصر به فرد هستش رو بررسی میکنیم

اول از همه بررسی میکنیم اگر خاصیت Tag باتن فشرده شده برابر با BS بود عمل پاک کردن متن رو انجام ببده ، در قسمت دیزاین یک باتن داشتیم به اسم btnBS (bs = backspace) که خاصیت Tag

این باتن رو BS گذاشتیم و کار این باتن این هستش که پس از هر بار فشردن 1 حرف را پاک میکند

خوب این کار رو با متد SubString2 انجام دادیم

[left]

[color="#0000FF"]Case [/color]"[color="#FF0000"]BS[/color]"
If [color="#800080"]lblResult[/color].Text.Length > [color="#800080"]0[/color] [color="#0000FF"]Then[/color]
[color="#800080"]lblResult[/color].Text = [color="#800080"]lblResult[/color].Text.SubString2([color="#800080"]0[/color],[color="#800080"]lblResult[/color].Text.Length-1)
[color="#0000FF"]End If[/color]"

[/left]


اینجا یک شرط داریم که تعداد کارکترهای lblResult رو بررسی میکنه که اگر بیشتر از 0 بود با استفاده از متد SubString2 از آخر 1کارکتر را پاک میکنیم

در ادامه این کد ها رو داریم :

[left]
[color="#0000FF"]Case Else[/color]
[color="#800080"]lblResult[/color].Text = [color="#800080"]lblResult [/color]+ send.Text
[color="#0000FF"] End Select[/color]
[color="#0000FF"]If[/color] [color="#800080"]lblResult[/color].Text.Length = 0 Then
[color="#800080"]btn0[/color].Visible = [color="#0000FF"]False[/color]
[color="#0000FF"]Else[/color]
[color="#800080"]btn0[/color].Visible = [color="#0000FF"]True[/color]
[color="#0000FF"]End If[/color]
[color="#0000FF"]End Sub[/color]
[/left]


بعد از Case Else میگیم که مقدار فعلی lblResult رو همراه با مقدار Send.Tag که مقدار Tag باتن فشرده شده هستش نمایش بده

و پس از اون هم با یک If مقدار lblResult رو بررسی میکنیم که در صورت 0 نبودن اون باتن 0 رو true کنیم و در صورت 0 بودن اون رو False میکنیم

زیرا در ریاضی 0 پشت عدد معنی ندارد

این آموزش ادامه دارد...

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

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

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...