رفتن به مطلب

***دیالوگ ادیت تکست دار***


امیرحسین قاسمی

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

سلام،

حتما توی برخی از پروژه ها چیزی مثل Msgbox که دارای ادیت تکست باشه لازم مون میشه. چنین چیزی رو میتونیم با یک پنل، لیبل و یک ادیت تکست و باتن از طریق دیزاینر بسازیم...

امّا خب شاید هم دردسر داشته باشه و هم یک چیز متریالی در نیاد و به ظاهر خوب نباشه.

پس میریم سراغ راه استاندارد:

  • ابتدا کتابخانه XUI و XUI Views رو تیک می زنیم.
  • سپس کدهای زیر را مینویسیم:
    Private dialog As B4XDialog
    dialog.Initialize(Activity)
	dialog.Title = "تیتر دیالوگ"
	Dim input As B4XInputTemplate
	input.Initialize
	input.RegexPattern = ".+" 'این یک الگو هست، پیشنهاد می کنم بزارید همین بمونه
	input.lblTitle.Text="توضیحات"
	input.ConfigureForNumbers(False,False)
    ' در بالا پارامتر اول برای اعشاری بودن یا نبودن اعدادی است که در ادیت تکست وارد می شوند
	'همچنین پارامتر دوم برای این است که فقط اعداد وارد شوند یا حروف هم میتوانند در ادیت تکست دیالوگ وارد شوند.
    'الان فقط اعداد میتوانند وارد شوند و همچنین اعداد اعشاری توانایی ورود به ادیت تکست دیالوگ را نخواهند داشت
    Wait For (dialog.ShowTemplate(input, "تایید", "", "لغو")) Complete (Result As Int)
	If Result = xui.DialogResponse_Positive Then
		Log("تایید")
    Else if Result = xui.DialogResponse_Cancel Then
        Log("لغو")
	End If

در واقع هر دیالوگ ادیت تکست دار مانند Msgbox2 میتواند سه گزینه برای انتخاب داشته باشد:

1- مثبت (Positive)

2- منفی (Negative)

3- لغو(Cancel)

من در این مثال گزینه 2 یعنی منفی را خالی گذاشته ام تا فقط دو گزینه برای انتخاب داشته باشم.

به مثال زیر توجه کنید هر سه گزینه را پر کرده ام تا سه گزینه برای انتخاب داشته باشم.

Wait For (dialog.ShowTemplate(input, "مثبت", "منفی", "کنسل")) Complete (Result As Int)

در این صورت باید رویداد کلیک "منفی" هم تعیین گردد که به شکل زیر صورت می گیرد:

	If Result = xui.DialogResponse_Negative Then
		Log("منفی")
	End If

:53:موفق و سربلند باشید:53:

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

بایگانی شده

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

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

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