تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
سؤال في فتح الفورم حسب السجل.
#1
السلام عليكم. عندي فورمين الفورم الاول به بيانات والفورم الثاني به أزار مثلا لو اضغظ على الزر الاول يفتح لي الفورم الاول السجل الاول والزر الثاني يفتح لي الفورم الاول السجل الثاني وهكذا يعني باختصار يفتح الفورم حسب السجل ولكم جزيل الشكر.
الرد }}}
تم الشكر بواسطة:
#2
مثال بسيط
موديول
كود :
Module Module1
    Public str As String = "provider=microsoft.ace.oledb.12.0;data source=|datadirectory|\db.accdb"
    Public con As New OleDb.OleDbConnection(str)
    Public ds As New DataSet
    Public sql As String = "select * from tb"
    Public da As New OleDb.OleDbDataAdapter(sql, con)
    Public pos As Integer = 0
    Public Sub fi()
        ds.Clear()
        Form1.tname.DataBindings.Clear()
        Form2.mobile.DataBindings.Clear()
        Form3.email.DataBindings.Clear()

        da.Fill(ds, "tb")

        Form1.tname.DataBindings.Add("text", ds, "tb.tname")
        Form2.mobile.DataBindings.Add("text", ds, "tb.mobile")
        Form3.email.DataBindings.Add("text", ds, "tb.email")


    End Sub
  
End Module

الفورم الاول (فيد اداة نصية باسم tname)
كود :
Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        fi()
        mov.Left = Me.Left + Me.Width
        Form2.Top = Me.Top + Me.Height
        Form3.Top = Form2.Top + Form2.Height
        Form2.Show()
        Form3.Show()
        mov.Show()
    End Sub

End Class

وفورمين form2.mobile
form3.email
وفورم اخر للتنقل به زرين
السابق
كود :
Form1.BindingContext(ds, "tb").Position -= 1
        Form2.BindingContext(ds, "tb").Position -= 1
        Form3.BindingContext(ds, "tb").Position -= 1

اللاحق
كود :
Form1.BindingContext(ds, "tb").Position += 1
        Form2.BindingContext(ds, "tb").Position += 1
        Form3.BindingContext(ds, "tb").Position += 1


اما المطلوب فاسهل من كذا ان الزر الذي ننقره مخزن به قيمة مانريد الاستعلام عنه فالامر اكثر بساطة ارجو رفع مثالك للتعديل عليه
الرد }}}
تم الشكر بواسطة:
#3
المثال في المرفقات يعطيك الف عافية اخوي سعود
ربي يبارك فيك
اللي اريده انه لمن اضغط على زر المنتج الاول يفتح لي بيانات السجل الاول
ولمن اضغط على المنتج الثاني يفتح لي بيانات السجل الثاني وهكذا


الملفات المرفقة
.rar   hefam.rar (الحجم : 925.54 ك ب / التحميلات : 65)
الرد }}}
تم الشكر بواسطة:
#4
فهمت الحين لكن فيهاستفسار لعلي لفهم اكثر
هل السجلات بعدد معين اي بعدد الازرار؟ .. لاني وجدت زر اضافة فكيف نبرمج للسجل الجديد ؟؟
اقترح بدل طريقة الازرار ان نضيف اداة القائمة اما Combobox or Listbox ونعبئها ببيانات عمود من جدول وعند نقر اي بند يتم اظهار تفاصيله في فورم معين.
مارايك باقتراحي؟
الرد }}}
تم الشكر بواسطة:
#5
التعديل اللي انا سويت:
اضفت موديول وكتبت التعريف التالي:
كود :
Public pos As Integer = 0


وعدلت على الفورم التالي:


frm00000.vb


التالي:
انني فقط كتبت
كود :
pos = 0
للسجل الاول


والثاني
كود :
pos = 1


وهكذا ليكون الفورم هكذا
كود :
Public Class frm00000












    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            pos = 0
            _1.ShowDialog()
        Catch ex As Exception
            MsgBox(Err.Description, MsgBoxStyle.Critical, "")




        End Try
    End Sub








  




    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Try




            pos = 1
            _1.ShowDialog()
        Catch ex As Exception
            MsgBox(Err.Description, MsgBoxStyle.Critical, "")




        End Try




    End Sub




    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Try




            pos = 2
            _1.ShowDialog()
        Catch ex As Exception
            MsgBox(Err.Description, MsgBoxStyle.Critical, "")




        End Try




    End Sub




    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Try
            pos = 3
            _1.ShowDialog()
        Catch ex As Exception
            MsgBox(Err.Description, MsgBoxStyle.Critical, "")




        End Try




    End Sub
End Class


وآخر حدث تحميل الفورم الاول او فورم التفاصيل كتبت
كود :
Me.BindingContext(DataSet1, "table1").Position = pos


وقمت بكتابة كود التنظيف لمربعات النص في الفورم الخاص بتفاصيل كل منتج
كود :
TextBox1.DataBindings.Clear()        TextBox2.DataBindings.Clear()
        TextBox3.DataBindings.Clear()
        TextBox4.DataBindings.Clear()
        TextBox5.DataBindings.Clear()
        TextBox6.DataBindings.Clear()
        TextBox13.DataBindings.Clear()
        TextBox14.DataBindings.Clear()
ليكون الفورم الخاص بالتفاصيل هكذا
كود :
Imports System.DataImports System.Data.OleDb


Imports System.IO


Imports System
Public Class _1
    Dim DataAdapter1 As OleDbDataAdapter


    Dim FileName As String = String.Empty
    Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source =" & Application.StartupPath & "\sow.mdb"
    Dim Conn As New OleDbConnection(ConStr)
    Dim DataSet1 As New DataSet
    Dim SQLstr As String = "SELECT * FROM table1"


    Public Sub ChangePosition()
        Label24.RightToLeft = Windows.Forms.RightToLeft.Yes
        Label24.Text = "السجل " & Me.BindingContext(DataSet1, "table1").Position + 1 & _
        " من " & Me.BindingContext(DataSet1, "table1").Count
    End Sub
  
    Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Me.BindingContext(DataSet1, "table1").Position = Me.BindingContext(DataSet1, "table1").Count - 1
        ChangePosition()
    End Sub


    Private Sub _1_Load_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, Conn)
        DataAdapter1.Fill(DataSet1, "table1")




        TextBox1.DataBindings.Clear()
        TextBox2.DataBindings.Clear()
        TextBox3.DataBindings.Clear()
        TextBox4.DataBindings.Clear()
        TextBox5.DataBindings.Clear()
        TextBox6.DataBindings.Clear()
        TextBox13.DataBindings.Clear()
        TextBox14.DataBindings.Clear()








        TextBox1.DataBindings.Add("Text", DataSet1, "table1.Sectionname")
        TextBox2.DataBindings.Add("Text", DataSet1, "table1.floor")
        TextBox3.DataBindings.Add("Text", DataSet1, "table1.side")
        TextBox4.DataBindings.Add("Text", DataSet1, "table1.phone")
        TextBox5.DataBindings.Add("Text", DataSet1, "table1.convert1")
        TextBox6.DataBindings.Add("Text", DataSet1, "table1.fax")
        TextBox13.DataBindings.Add("Text", DataSet1, "table1.email")
        TextBox14.DataBindings.Add("Text", DataSet1, "table1.pic")






        If TextBox14.Text = "" Then
            PictureBox1.Image = Nothing
        Else


            On Error Resume Next




            PictureBox1.Image = Image.FromFile(Application.StartupPath & "\pic\" & TextBox14.Text)




        End If


        Me.BindingContext(DataSet1, "table1").Position = pos
    End Sub


    Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs)


    End Sub


    Private Sub Button1_Click_2(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If MsgBox("هل تريد إضافة معلومات قسم جديد ", vbYesNo + vbQuestion, "إضافة جديدة") = MsgBoxResult.Yes Then


            Button1.Enabled = False
            Button2.Enabled = True


            TextBox1.Clear()
            TextBox2.Clear()
            TextBox3.Clear()
            TextBox4.Clear()
            TextBox5.Clear()
            TextBox6.Clear()
            TextBox13.Clear()
            TextBox14.Clear()


        End If


        TextBox1.Focus()


    End Sub


    Private Sub Button4_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Try


            My.Computer.FileSystem.CopyFile(TextBox14.Text, Application.StartupPath & "\pic\" & IO.Path.GetFileName(TextBox14.Text), True)






        Catch ex As Exception
        End Try








        Try
            Dim SavInto As New OleDb.OleDbCommand






            If Conn.State = ConnectionState.Open Then Conn.Close()


            SavInto.Connection = Conn
            SavInto.CommandType = CommandType.Text








            SavInto.CommandText = "update table1 SET Sectionname = '" & Trim(TextBox1.Text) & "' , floor = '" & Trim(TextBox2.Text) & "' , side = '" & Trim(TextBox3.Text) & "' , phone = '" & Trim(TextBox4.Text) & "' , Convert1 = '" & Trim(TextBox5.Text) & "' , fax= '" & Trim(TextBox6.Text) & "' , email = '" & (TextBox13.Text) & "' , pic = '" & IO.Path.GetFileName(TextBox14.Text) & "' WHERE Sectionname = '" & (TextBox1.Text) & "'"


            Conn.Open()






            SavInto.ExecuteNonQuery()










            Dim dataadapter As New OleDbDataAdapter(SQLstr, Conn)




            DataSet1.Clear()
            dataadapter.Fill(DataSet1, "table1")














            Conn.Close()
            MsgBox("تمت عملية التعديل بنجاح بنجاح")




        Catch ex As Exception


            MsgBox(ex.ToString)


        End Try






    End Sub


    Private Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        'My.Computer.FileSystem.CopyFile(TextBox14.Text, Application.StartupPath & "\pic\" & IO.Path.GetFileName(TextBox14.Text))






        Try


            My.Computer.FileSystem.CopyFile(TextBox14.Text, Application.StartupPath & "\pic\" & IO.Path.GetFileName(TextBox14.Text), True)






        Catch ex As Exception
        End Try








        Try
            Dim SavInto As New OleDb.OleDbCommand
            'Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Application.StartupPath & "\sow.mdb"


            'Dim Conn As New OleDbConnection(ConStr)






            If Conn.State = ConnectionState.Open Then Conn.Close()


            SavInto.Connection = Conn
            SavInto.CommandType = CommandType.Text












            SavInto.CommandText = "Insert Into table1(Sectionname,floor,side,phone,Convert1,fax,email,pic) Values('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & TextBox4.Text & "','" & TextBox5.Text & "','" & TextBox6.Text & "','" & TextBox13.Text & "','" & IO.Path.GetFileName(TextBox14.Text) & "')"










            Conn.Open()




            SavInto.ExecuteNonQuery()
            Conn.Close()
            MsgBox("تمت عملية الاضافة بنجاح")
            Button1.Enabled = True
            'Me.Close()


        Catch ex As Exception


            MsgBox(ex.ToString)
            'Exit Sub
            Button1.Enabled = True




        End Try
    End Sub


    Private Sub Button3_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Dim op As New OpenFileDialog


        With op


            .Title = "اختار صورة"


            .Filter = "Jpg(*.jpg)|*.jpg|Bmp(*.bmp)|*.bmp|Png(*.png)|*.png|Gif(*.gif)|*.gif"


            .ShowDialog()


        End With


        If op.FileName = Nothing Then


            Exit Sub


        Else






            TextBox14.Text = op.FileName
            PictureBox1.Image = Image.FromFile(op.FileName)








            op.Dispose()










        End If
    End Sub


    Private Sub Button8_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
        Me.BindingContext(DataSet1, "table1").Position = 0
        ChangePosition()
    End Sub


    Private Sub Button6_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
        Me.BindingContext(DataSet1, "table1").Position += 1
        ChangePosition()
    End Sub


    Private Sub Button7_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
        Me.BindingContext(DataSet1, "table1").Position -= 1
        ChangePosition()
    End Sub


    Private Sub Button9_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
        Me.BindingContext(DataSet1, "table1").Position = Me.BindingContext(DataSet1, "table1").Count - 1
        ChangePosition()
    End Sub


    Private Sub TextBox14_TextChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox14.TextChanged
        Try


            If TextBox14.Text.Length > 0 Then


                PictureBox1.Image = Image.FromFile(Application.StartupPath & "\pic\" & TextBox14.Text)


            Else


                PictureBox1.Image = Nothing


            End If


        Catch ex As Exception


        End Try


    End Sub


    
End Class
الرد }}}
تم الشكر بواسطة:
#6
هذا طبعا للاخ الاداري بمنتدى فيجوال بيسك وجدت الموضوع بمنتدى الاقصر





السلام عليكم ورحمة الله وبركاته
عند تشغيل مشاريع 2010 على اصدار اقدم نجد ان به اخطا نتيجة لأنه على اصدار اقدم وكود الاسيمبلى والديزان بها مشاكل لذلك سنتعرف حل حل بسيط

طريقة تشغيل مشاريع 2010 الى اصدارات اقدم 2008 & 2005

افتح مشرع جديد من فيجول 2008 فقط بدون ام تعمل شيئ به
فقط غير اسم الفروم من (name) وليس التكست
او من solution explorer
بحيث يكون الاسم غير اسم الفرومات التى ستضاف من مشروع 2010

من قائمة project اختار add Existing item سيفتح لك مربع حوارى
اذهب للمشروع المبرمج ب 2010 الى تريد تشغيله على 2008 او 2005
من المربع الحوارى واذهب لمجلد الفرومات بمشروع 2010 ستجد لكل فروم 3 ملفات كما فى الصورة




حدد الملفات لكل الفرومات ثم اضغط على add
سيتجد الان الفرمات الجديدة فى solution explorer

من قائمة project اختار اخر خيار لخصائص المشروع
من startup form اختار الفروم الذى سيبدأ به المشروع مثل ما كان فى 2010
جرب التشغيل الان
بالتوفيق

[/HR]يوجد اداة تقوم بتحويل المشاريع من مايكروسوفت
الاداة سهل العمل عليها ولا تحتاج لشرح
يمكن التحميل من المرفق

لأى استفسارات عن الاداة موجود باذن الله
انا استخدم الاداة منذ فترة بجد لا حدث اى مشاكل
يمكنكم استخدام الاداة او بالطريقة التى بالاعلى

---------------------------------------------------------------------------------
----------------------------------------------------------------------
الملفات المرفقة
converter.zip (الحجم : 23.61 KB / التحميلات : 1)
الملف المرفق اعلاه هذا للتحويل بين اصدارات المشاريع


الملفات المرفقة
.zip   hefam.zip (الحجم : 863.53 ك ب / التحميلات : 73)
الرد }}}
تم الشكر بواسطة:
#7
يعطيك ربي الف عافية ياخوي سعود
لقد طبقت طريقتك خطوة خطوة وضبطت معايه
تسلم يالغالي
الرد }}}
تم الشكر بواسطة:
#8
hefa كتب :يعطيك ربي الف عافية ياخوي سعود
لقد طبقت طريقتك خطوة خطوة وضبطت معايه
تسلم يالغالي
الله يعافيك
احلى شي ان الواحد يعرف نتيجة مجهوده افاد ام لا
الرد }}}
تم الشكر بواسطة:



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


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