24-12-16, 11:07 PM
(24-12-16, 10:47 PM)ابو ليلى كتب : اتضح ان الجداول مرتبطة بعد مراجعة الكود
على اي حال التعديل بسيط و ان شاء الله يفي بالغرض
لدي الدالة التالية جديدة
PHP كود :
Private Function GetImageById(ByVal DataTable As DataTable, ByVal 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(Dt, 0)
Else
PictureBox1.Image = Nothing
Bn.DataSource = Nothing
End If
End Sub
الزر التالي للانتقال لصورة تالية
PHP كود :
If Bn.Count > 0 Then
Bn.MoveNext()
PictureBox1.Image = GetImageById(Dt, Bn.Position)
End If
و الزر التالي للانتقال لصورة سابقة
PHP كود :
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
If Bn.Count > 0 Then
Bn.MovePrevious()
PictureBox1.Image = GetImageById(Dt, Bn.Position)
End If
End Sub
انا عرفت ما يلي في بداية النموذج
PHP كود :
Dim Dt As New DataTable
Dim Bn As New BindingSource
الله اكبر ما شاء الله عليك يا استاذ ,,
الكود شغال 100% سلمت يمناك و جزاك الله عني كل خير ,,
فعلاً كان معقدني و انت حليتها
مشكوووور جداً جداً