PDA

View Full Version : نحوه جستجو بوسیله دستگاه بارکد خوان



mehdi_9009
چهارشنبه 13 بهمن 1389, 21:12 عصر
با سلام خدمت دوستان
من اطلاعات را بوسیله بارکد خوان روی ی تکس باکس نشون می دم حالا نمی دونم از کدوم ایونت تکس باکس برای جستجو استفاده کنم می خوام هر وقت کاربر دکمه بارکد خوانو فشار بده عدد مربوط به بارکد روی تکس بااکس نشون داده بشه وجستجو انجام بشه بدون استفاده از ایونتهای دیگر مشکل اینه که از تکس چنج نمی شه استفاده کرد برای بار اول اعداد رو نشون می ده ولی برای بار دوم بار کد دوم دوتا عدد رو با هم نشون می ده و جستجو خراب می شه اگه پایان جستجو تکس باکسو خالی کنیم اصلا عدد رو نشون نمی ده اطفا اگه ممکنه منو راهنمایی کنید

ali_najari
چهارشنبه 13 بهمن 1389, 22:53 عصر
دوست عزیز من متوجه اینکه شما میگید برای بار دوم 2 تا عدد رو نشون میده نشم منظورتون چیه اگه میشه یکم بیشتر توضیح بدید یا اگر امکان داره عکس بزارید.

mehdi_9009
چهارشنبه 13 بهمن 1389, 23:11 عصر
سلام مجدد با استفاده ار تابع و خالی کردن و فکوس کردن این کارو انجام دادیم مشکل اینجاست که اگه در آخر جستجو
textBox1.Clear();
textBox1.Focus();
قرار بدیم جستجو انجام می شه ولی شماره بارکد روی تکس باکس نشون داده نمی شه ی مشکل دیگه اگه آخر جستجو تکس باکس رو خالی نکنیم تو ایونت تکس چنج شماره جدید به شماره قدیم وصل می شه اگه با بارکد خوان کار کنی دقیقا متوجه می شی

ebrahimv
چهارشنبه 13 بهمن 1389, 23:14 عصر
وقتي عمل خواندن باركد تموم ميشه كد كليد اينتر رو ارسال ميكنه
ميتوني ازش استفاده كني

mehdi_9009
پنج شنبه 14 بهمن 1389, 08:04 صبح
سلام مجدد من تو کاتالوگش گشتم بارکد اینتر و کنسل و .. بود ولی شماره ندارن و ی نکته دیگه زمانی که کاربر دکمه بارکد خوانو فشار می ده فقط شماره بارکد دتکت می شه و شماره اینتر رو دتکت نمی کنه اگه ممکنه ی مثال یا کد بهم بدین ممنون می شم

ebrahimv
پنج شنبه 14 بهمن 1389, 09:28 صبح
دوست عزيز باركد همانند صفحه كيد عم ميكنه بدون هيچ تفاوتي
حتي اگه موقع گرفتن زبان سيستم فارسي باشه اگه تو باركد حرف وجود داشته باشه فارسي مينويسه
كافيه تو باركد رو درون يه تكس باكس بخوني و تو رويداد كي داون بنويسي اگه كيد برابر اينتر بود برود عمليات جستجو رو انجام بده

mehdi_9009
پنج شنبه 14 بهمن 1389, 10:13 صبح
سلام مجدد از کد زیر استفاده می کنم
if (e.KeyValue == 13)
{
MessageBox.Show("gg");
}
تو ایونت کی داون ولی بار دوم مسیج باکس رو نشون نمی ده اگه ممکنه ی مثال بزنید

mehdi_9009
پنج شنبه 14 بهمن 1389, 10:17 صبح
طبق این چیزی که شما می گین علاوه بر دتکت کردن شماره بار کد باید مسیج باکس نشون بده ولی شماره بارکود دتکت می شه ولی مسیج باکس نشون نمی ده

ebrahimv
پنج شنبه 14 بهمن 1389, 10:34 صبح
اگه ميشه مشكت و بهتر توضيح بده؟

mehdi_9009
پنج شنبه 14 بهمن 1389, 11:04 صبح
اگه از فروشگاهای زنجیره ای خرید کرده باشی کاربر اجناسو با بارکد دتکت می کنه من ی چیزی مثل اون می خام اول کاربر با بارکود خوان ی شماره دتکت می کنه بعد سرچ انجام می شه و بار دوم همین کارو انجام می ده من بار اول مشکلی ندارم مشکل اصلی بار دوم به بعده تو ایونت تکس چنج بار اول جواب می ده بعد ار سرچ اگه تکس باکو خال کنم هیچی دیگه تو تکی باکس نشون نمی ده اگه خالی نکنم طول بارکد دوم به بارکد اول اضافه می شه باید ی کاری انجام بدم که هر وقت کاربر دکمه بارکد خوانو فشار می ده سرچشروع بشه و نتایج نشون داده بشه برای بار دوم به بعد اول تکس باکس خالی بشه شماره جدید جایگزین بشه و سرچ شروع بشه مشکل اصلی من یار دوم به بعده ممنون می شم اگه با ی مثال منو راهنمایی کنید

ebrahimv
پنج شنبه 14 بهمن 1389, 11:28 صبح
من همين عمل رو انجام دادم
من نميدونم بهتر از اين چه جوري توضيح بدم
تو رويداد تكس چينج هيچي ننويس چون هم كنترلش سخته هم برا هر كاراكتر كدات تكرار ميشه
تو رويداد كي داون اين كد رو بنويس


If e.KeyCode = Keys.Enter Then
دستورات جستجو
خالي كردن تكس باكس
End If

الان وقتي باركد خونده شد اين شرط كار ميكنه و متن داخل تكس باكس مال باركده بعد جستجو انجام ميشه و بعد تگس باكس خالي ميشه برا ورود باركد بعدي

mehdi_9009
پنج شنبه 14 بهمن 1389, 19:46 عصر
سلام ممنون از راهنمایتون تو ایونت کی پرس حلش کردم