تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الانتقال إلى السجل الثاني في قاعدة البيانات و إظهار الصورة التالية على picturebox
#1
السلام عليكم ,, 
لو فرضنا أن لدي قاعدة بيانات أكسس  ,, 
و بها جدولين ,, الاول بيانات خط ,, (line_no,line_name,from,to)
و الثاني صورة فحص الخط,, و حقوله ( line_no,imge_line)
ولدي في الفورم ,, picturebox >> 
ــــــــــــــــــــــــ
والصور هي عبارة عن نموذج سكانير خاص بفحص الخط ,, 
بطبيعة الحال الخط قد يحدث عليه فحص اكثر من مرة في السنة ,, 

اى ان  بعض الخطوط  لها أكثر من صورة ,, 
فعند الاستعلام برقم الخط تظهر الصورة على picturebox 
وهذا كود الإستعلام على الخط 

سؤالي هو كيف أقوم بالبحث عن طريق button للصورة التالية للخط بحسf رقم الخط الموجود في text 
مشكورن سلفاً يا مبرمجين ,,
الرد }}}
تم الشكر بواسطة:
#2
لا ادري ان كنت قد فهمت سؤالك بشكل جيد (تريد عرض الصور المرتبطة بالخط الحالي)
اذا كان كذلك........
استورد بيانات جدول الصور الى جدول DataTable و اسنده الى عنصر DataGridView او ListView

الـ PictureBox لا يعرض لك سوى صورة واحدة وهي اخر صورة قادمة من القارئ DataReader
و اذا كنت تريد المحافظة على نفس الطريقة انشئ جدول و اسند له البيانات القادمة من DataReader عبر الطريقة
PHP كود :
DataTable.Load(DataReader

عندها يمكنك المرور على الصور بالتنقل عبر اسطر الجدول .
الافكار كثيرة في هذا المجال و متنوعة...
لو ارفقت مثال مبسط مع قاعدة تحتوي على معلومات كان افضل
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة: ahmed_elwerfalli
#3
(24-12-16, 07:08 PM)ابو ليلى كتب : لا ادري ان كنت قد فهمت سؤالك بشكل جيد (تريد عرض الصور المرتبطة بالخط الحالي)
اذا كان كذلك........
استورد بيانات جدول الصور الى جدول DataTable و اسنده الى عنصر DataGridView او ListView

الـ PictureBox لا يعرض لك سوى صورة واحدة وهي اخر صورة قادمة من القارئ DataReader
و اذا كنت تريد المحافظة على نفس الطريقة انشئ جدول و اسند له البيانات القادمة من DataReader عبر الطريقة
PHP كود :
DataTable.Load(DataReader

عندها يمكنك المرور على الصور بالتنقل عبر اسطر الجدول .
الافكار كثيرة في هذا المجال و متنوعة...
لو ارفقت مثال مبسط مع قاعدة تحتوي على معلومات كان افضل

لقد ارفقت مثال على ذلك


الملفات المرفقة
.rar   new app.rar (الحجم : 98.5 ك ب / التحميلات : 128)
الرد }}}
تم الشكر بواسطة:
#4
الاخ احمد- القاعدة ينقصها جدول tab_list كما وان جدول الصور فارغ
ارسل القاعدة التي تحتوي على الجدول المفقود و بعض البيانات التي تم ادخالها في جدول الصور
كما و انه لا يوجد ما يشير على أن الجدول img_tb مربوط مع اي جدول (لا يوجد حقل ربط)
ارفق مثال يعمل معك و ينقصه الجزئية التي سألت عنها فقط.
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة: ahmed_elwerfalli
#5
(24-12-16, 09:01 PM)ابو ليلى كتب : الاخ احمد- القاعدة ينقصها جدول tab_list كما وان جدول الصور فارغ
ارسل القاعدة التي تحتوي على الجدول المفقود و بعض البيانات التي تم ادخالها في جدول الصور
كما و انه لا يوجد ما يشير على أن الجدول img_tb  مربوط مع اي جدول (لا يوجد حقل ربط)
ارفق مثال يعمل معك و ينقصه الجزئية التي سألت عنها فقط.

آسف ,,, 
هذا مثال جديد 
في المثال جعلت قيمة التيكست تظهر في فورم لوود ,, 
ما عليك إلا وضع الموؤشر على التكست و الضغط على enter
ثم إختار من brows صورة اخرى و إضغط على add this image to this line 
هنا اصبح لدينا صورتين لنفس الخط ,, 
أتمنى  ان تكون وصلت الفكرة


الملفات المرفقة
.rar   new app.rar (الحجم : 1.68 م ب / التحميلات : 164)
الرد }}}
تم الشكر بواسطة:
#6
اتضح ان الجداول مرتبطة بعد مراجعة الكود
على اي حال التعديل بسيط و ان شاء الله يفي بالغرض
لدي الدالة التالية جديدة
PHP كود :
   Private Function GetImageById(ByVal DataTable As DataTableByVal i As Integer) As Bitmap
        If DataTable
.Rows.Count 0 Then

            Dim bits 
As Byte() = CType(DataTable.Rows(i).Item("imga"), Byte())
 
           Dim memo As New MemoryStream(bits)
 
           Dim myimg As New Bitmap(memo)
 memo.Close()
 
           Return myimg
        End 
If
 
       Return Nothing
    End 
Function 

و شكل الاجراء لديك اصبح كالتالي
PHP كود :
   Sub getimg()
 
       Dim conn As New OleDbConnection("provider=microsoft.jet.oledb.4.0;" "data source=" Application.StartupPath "\db1.mdb")
 
       Dim comm As New OleDbCommand()
 
       PictureBox1.BackgroundImageLayout ImageLayout.Stretch
        PictureBox1
.Image Nothing
        comm
.Connection conn
        conn
.Open()
 
       comm.CommandText "select * from img_tb where imname='" linen.Text "'"
 
       Dim dr As OleDbDataReader comm.ExecuteReader
        Dt
.Clear()
 
       Dt.Load(dr)
 
       conn.Close()
 
       If Dt.Rows.Count 0 Then
            Bn
.DataSource Dt
            PictureBox1
.Image GetImageById(Dt0)
 
       Else
            PictureBox1
.Image Nothing
            Bn
.DataSource Nothing
        End 
If
 
   End Sub 


الزر التالي للانتقال لصورة تالية
PHP كود :
       If Bn.Count 0 Then
            Bn
.MoveNext()
 
           PictureBox1.Image GetImageById(DtBn.Position)
 
       End If 


و الزر التالي للانتقال لصورة سابقة
PHP كود :
   Private Sub Button8_Click(sender As ObjectAs EventArgsHandles Button8.Click
        If Bn
.Count 0 Then
            Bn
.MovePrevious()
 
           PictureBox1.Image GetImageById(DtBn.Position)
 
       End If
 
   End Sub 

انا عرفت ما يلي في بداية النموذج
PHP كود :
   Dim Dt As New DataTable
    Dim Bn 
As New BindingSource 
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة: ahmed_elwerfalli
#7
(24-12-16, 10:47 PM)ابو ليلى كتب : اتضح ان الجداول مرتبطة بعد مراجعة الكود
على اي حال التعديل بسيط و ان شاء الله يفي بالغرض
لدي الدالة التالية جديدة
PHP كود :
   Private Function GetImageById(ByVal DataTable As DataTableByVal i As Integer) As Bitmap
        If DataTable
.Rows.Count 0 Then

            Dim bits 
As Byte() = CType(DataTable.Rows(i).Item("imga"), Byte())
 
           Dim memo As New MemoryStream(bits)
 
           Dim myimg As New Bitmap(memo)
 memo.Close()
 
           Return myimg
        End 
If
 
       Return Nothing
    End 
Function 

و شكل الاجراء لديك اصبح كالتالي
PHP كود :
   Sub getimg()
 
       Dim conn As New OleDbConnection("provider=microsoft.jet.oledb.4.0;" "data source=" Application.StartupPath "\db1.mdb")
 
       Dim comm As New OleDbCommand()
 
       PictureBox1.BackgroundImageLayout ImageLayout.Stretch
        PictureBox1
.Image Nothing
        comm
.Connection conn
        conn
.Open()
 
       comm.CommandText "select * from img_tb where imname='" linen.Text "'"
 
       Dim dr As OleDbDataReader comm.ExecuteReader
        Dt
.Clear()
 
       Dt.Load(dr)
 
       conn.Close()
 
       If Dt.Rows.Count 0 Then
            Bn
.DataSource Dt
            PictureBox1
.Image GetImageById(Dt0)
 
       Else
            PictureBox1
.Image Nothing
            Bn
.DataSource Nothing
        End 
If
 
   End Sub 


الزر التالي للانتقال لصورة تالية
PHP كود :
       If Bn.Count 0 Then
            Bn
.MoveNext()
 
           PictureBox1.Image GetImageById(DtBn.Position)
 
       End If 


و الزر التالي للانتقال لصورة سابقة
PHP كود :
   Private Sub Button8_Click(sender As ObjectAs EventArgsHandles Button8.Click
        If Bn
.Count 0 Then
            Bn
.MovePrevious()
 
           PictureBox1.Image GetImageById(DtBn.Position)
 
       End If
 
   End Sub 

انا عرفت ما يلي في بداية النموذج
PHP كود :
   Dim Dt As New DataTable
    Dim Bn 
As New BindingSource 

الله اكبر ما شاء الله عليك يا استاذ ,,
الكود شغال 100% سلمت يمناك و جزاك الله عني كل خير ,, 
فعلاً كان معقدني و انت حليتها 
مشكوووور جداً جداً
الرد }}}
تم الشكر بواسطة: ابو ليلى


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] عدم إظهار الصور مع النص فى Listview من قاعدة البيانات alims 2 1,581 27-08-23, 12:22 PM
آخر رد: رضوان الجماعي
  [نقاش] مشاركة قاعدة بيانات SQL على شبكه داخليه morkoskhalaf 3 3,009 06-01-23, 03:20 AM
آخر رد: عبدالكريم برشدان
  قاعدة بيانات xml djelloul 3 2,799 07-11-22, 10:27 PM
آخر رد: Am7
  استفسار عن تخزين الوقت في قاعدة البيانات strongriseman 2 1,126 22-04-22, 07:27 PM
آخر رد: strongriseman
  [سؤال] مشكلة فى عرض الصورة من ادخل قاعدة البيانات alims 2 1,264 17-11-21, 10:09 AM
آخر رد: سعود
  استعلام يرجع اسماء الاعمدة و نوع البيانات في جدول معين بسام محمدغانم 0 964 23-10-21, 01:43 AM
آخر رد: بسام محمدغانم
  مشكلة ظهور بياانات حقلين في قاعدة بيانات على شكل علامة استفهام bassant 5 1,632 17-10-21, 02:07 PM
آخر رد: abubasilIraq
  عدد السجلات ورقم السجل الحالى فى ال datagridview اسلام الكبابى 2 1,107 10-09-21, 07:36 PM
آخر رد: dalas
  تحويل multiline text الى single line في عمود في قاعدة بيانات sql server bassant 0 958 07-09-21, 04:36 PM
آخر رد: bassant
  الحفظ فى قاعدة البيانات اسلام الكبابى 10 2,350 06-09-21, 06:52 PM
آخر رد: اسلام الكبابى

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم