منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كيف أعرض البينات بعد قراءة الباركود
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته
أسأل الله العظيم رب العرش الكريم أن يمتعكم جميعا بالصحة والعافية في الدنيا والآخرة
سؤالي 
أريد تصميم شاشة مبيعات تعمل بالباركود لكني لا أعرف في أي حدث يوضع الكود لاظهار تفاصيل الصنف
أظن خطأ وضعه في Text Change

الخلاصة : أريد تمرير الرقم داخل Txtbox1 عن طريق جهاز الباركود فيتم عرض تفاصيل الصنف المباع
غالبا جهاز الباركود يضع كود Enter في نهاية الرقم
وتستطيع اقتناصه بالكود التالي وكأنك ضغط على زر إنتر داخل مربع النص
PHP كود :
Private Sub TextBox1_KeyDown(ByVal sender As ObjectByVal e As KeyEventArgsHandles TextBox1.KeyDown
    
If e.KeyCode Keys.Enter Then
        MsgBox
("أحضر البيانات")
    End If
End Sub 
(07-02-18, 06:33 PM)طالب برمجة كتب : [ -> ]غالبا جهاز الباركود يضع كود Enter في نهاية الرقم
وتستطيع اقتناصه بالكود التالي وكأنك ضغط على زر إنتر داخل مربع النص
PHP كود :
Private Sub TextBox1_KeyDown(ByVal sender As ObjectByVal e As KeyEventArgsHandles TextBox1.KeyDown
    
If e.KeyCode Keys.Enter Then
        MsgBox
("أحضر البيانات")
    End If
End Sub 
جزاك الله خيرا أخي الكريم / طالب برمجة
لكن انت تري في السوبر ماركت الكاشير يمرر الصنف علي الباركود فتظهر كل بيانات الصنف بدون الضغط علي اي زرار
هذا ما أريد فعله
لكن في الكود الذي تكرمت وأرسلته لي اظن يلزم ضغط زر انتر
لا يلزم ضغط زر انتر

اقرأ مشاركتي مرة أخرى بتركيز
(07-02-18, 06:45 PM)طالب برمجة كتب : [ -> ]لا يلزم ضغط زر انتر

اقرأ مشاركتي مرة أخرى بتركيز

جزاك الله خيرا اخي الكريم / طالب برمجة
وجاري التجربة
الباركود له عمليتين وهي كالتالي :

1- يقرأ الباركود ويضع الرقم في مكان المؤشر .

2- يضغط زر انتر تلقائي بعد قراءة الباركود .

يجب عليك وضع المؤشر في التكست الخاص برقم الباركود فقط ،، والباقي من عمل جهاز الباركود .

بمعنى آخر كأنك كتبت الرقم في التكست الخاص برقم الباركود ومن ثم ضغطت انتر .
(07-02-18, 07:02 PM)حريف برمجة كتب : [ -> ]الباركود له عمليتين وهي كالتالي :

1- يقرأ الباركود ويضع الرقم في مكان المؤشر .

2- يضغط زر انتر تلقائي بعد قراءة الباركود .

يجب عليك وضع المؤشر في التكست الخاص برقم الباركود فقط ،، والباقي من عمل جهاز الباركود .

بمعنى آخر كأنك كتبت الرقم في التكست الخاص برقم الباركود ومن ثم ضغطت انتر .

ما هو الكود  للباركود و كيف يتم اخذ البيانات من داتا وانا اريد كود لما احدد رقم الباركود يضيف تلقائي في داتا جريد فيو تفاصيل الصنف
أخي الكريم 
من الخطأ الذي يقع فيه الكثير هو وضع كود الباركود في حدث التكست تشينج
الحدث المفروض يتم وضعه في حدث Leave 
أي عند المغادرة 
لأن الباركود يقوم بالقراءة والإرسال يعني مرتين 
وهذا مثال بسيط للكود لتصلك فكرتي
كود :
Dim last As Integer

       If ItemBarCode.Text <> Nothing Then
           Dim dt As New DataTable
           Dim da As New SqlClient.SqlDataAdapter
           dt.Clear()
           da = New SqlClient.SqlDataAdapter("select * ,(SELECT Avg(UnitePrice) FROM ExpQtyUnite where DrugName = Items.Item_Name ) as t from Items where State='true' and Item_Bar Like '%" & ItemBarCode.Text & "%' ", SqlConn)

           '  da = New SqlClient.SqlDataAdapter("select *  FROM Items where ItemBarcode = '" & ItemBarCode.Text & "'", SqlConn)
           da.Fill(dt)
           If dt.Rows.Count > 0 Then
               Dim r As DataRow = dt.Rows(0)
               If DataGridView1.Rows(last).Cells(0).Value = dt.Rows(0).Item("Item_Code") Then
                   DataGridView1.Rows(last).Cells(7).Value = CDbl(DataGridView1.Rows(last).Cells(7).Value) + 1
               Else

                   DataGridView1.Rows.Add()

                   last = DataGridView1.Rows.Count - 1
                   DataGridView1(0, last).Value = dt.Rows(0).Item("Item_Code")
                   DataGridView1(1, last).Value = dt.Rows(0).Item("Item_Name")
                   DataGridView1(2, last).Value = dt.Rows(0).Item("Item_Bar")
                 
                                    DataGridView1(6, last).Value = dt.Rows(0).Item("Item_Price")
                   DataGridView1(7, last).Value = 1
                                     'Calc()
                   ' Calc()

               End If

           End If
           ItemBarCode.Clear()
       End If
       '