امیرحسین قاسمی 610 ارسال شده در 5 تیر، ۱۴۰۰ اشتراک گذاری ارسال شده در 5 تیر، ۱۴۰۰ سلام، حتما توی برخی از پروژه ها چیزی مثل 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 موفق و سربلند باشید لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.