فروم تخصصی - پشتیبانی CPSD

نسخه‌ی کامل: نکاتی در خصوص دریافت ورودی
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
ضمن سلام

نکته ای که در برخی موارد از دید برنامه نویسان پنهان میمونه , دریافت اطلاعات از ورودی کنترل در حالت تایپ نمودن میباشد
عملیات خواندن اطلاعات از داخل Textbox دارای یک ابهام جزئی میباشد که در ادامه اقدام به توضیحی در این خصوص و با توجه به دو حالت متفاوت می نمایم

در هنگامی که فوکوس همچنان بر روی کنترل Textbox قرار دارد و کاربر در حال تایپ و تکمیل اطلاعات ورودی میباشد , در واقع از دید برنامه نویسی این اطلاعات در حکم اطلاعاتی تثبیت شده نیستند
از دید برنامه نویسی اطلاعات را به دو بخش جزئی تقسیم میکنیم

اطلاعات تایید شده و تثبیت شده و اطلاعات تثبیت نشده

در حالتی که کاربر در حال تایپ اطلاعات میباشد , در واقع اطلاعات به صورت تثبیت نشده بوده و شاید بتوان بدین گونه تفسیر نمود که از دید برنامه , همچنان اطلاعاتی جهت بررسی وجود ندارد
بر همین اساس و با همین تفسیر در صورتی که قبل از ورود اطلاعات در داخل Textbox اطلاعاتی موجود بوده باشد و کاربر اقدام به تاپی نمودن اطلاعاتی جدید نماید , تا قبل از تکمیل پروسه تثبت , از دید برنامه Textbox همچنان حاوی همان اطلاعات قبلی است

به دستورات زیر توجه نمایید :


کد:
Private Sub txtEntery_Change()
    txtReflexA = txtEntery
    txtReflexB = txtEntery.Text
End Sub


دستور txtReflexA = txtEntery اقدام به خواندن اطلاعات همزمان با تایپ نمودن آن نخواهد نمود , چرا که در حال حاضر اطلاعات به صورت تثبیت شده نیستند و تنها قادر به باز گرداندن اطلاعاتی میباشد که از قبل به صورت تثبیت شده درآمده اند

ولیکن دستور txtReflexB = txtEntery.Text با توجه به استفاده از مشخصه Text قادر است همزمان با تایپ نمودن اطلاعات اقدام به خواندن اطلاعات نماید

توضیح : دو ذستور زیر معادل یکدیگر میباشند :

txtEntery.Value
txtEntery

جهت درک نمودن بهتر موضوع به مثال موجود توجه نمایید
در ابتدا اقدام به درج یک متن نموده و سپس مجدداً اقدام به تغییر همان متن نموده و نتیجه را ملاحظه فرمایید

موفق باشید