السلام عليكم
مرفق لكم برنامج حسابي فقط محتاج الى مساعده عند الاختيار للقيمه من قائمه ComboBox الموجوده في المشروع تحت بند Main عند اختيار اي قيمه في الكمبويكس اريد تتصفر القيمه في قائمه TextBox21 الموجوده في المشروع بحيث تتغير .
مثال:
اخترت 18000 وادخلت قيمه في قائمه الـ used مثلاً 1000
بعدها اخترت 300 اريد بمجرد اختيار الـ 300 تمستح القيمه الاولى الي هي 1000 وادخل قيمه يدوياً جديده وهكذ مع القيمه الاخير 104857600 عند اختيارها تلتغي القيمه السابقه الموجوده في التاكس بوكس 21
اشكر الاخ/المبدع 5000 حيث قام بمساعدتي في العمليات الحسابيه للبرنامج
في الحدث electedIndexChanged
ضع textbox21.text =""
وكل الخانات التي تريد ان تفرغها
لا أدري لماذا قمت بتكرار العملية الحسابية في كل حدث بالرغم من أنني وضعت لك الطريقة المختصرة والعملية في موضوعك السابق
الافضل أن تسمي الأدوات بمسميات واضحة بدلا من تغييرها في كل مشروع
فقد وجدت في موضوعك السابق أنه كان TaxtBox2 وأصبح في هذا الموضوع TextBox21
اكتب هذا الكود كامل
Public Class Form1
Private Sub Text_TextChanged(sender As Object, e As EventArgs) _
Handles ComboBox2.TextChanged, ComboBox3.TextChanged, TextBox21.TextChanged, TextBox17.TextChanged
ccc()
End Sub
Private Sub ccc()
Dim A6 = Val(ComboBox2.Text) ' first pk: Main
Dim C6 = Val(TextBox21.Text) ' first pk: Used
Dim F6 = A6 - C6 ' first pk: Remaining
Dim H6 = F6 ' first pk: Carry Over
Dim A7 = Val(ComboBox3.Text) ' sec pk: Main
Dim B7 = A7 + H6 ' sec pk: B7
Dim C7 = Val(TextBox17.Text) ' sec pk: Used
Dim D7 = A6 - C7 ' sec pk: D7
Dim E7 = D7 + A7 ' sec pk: E7
Dim F7 = If(H6 = 0, D7, E7) ' sec pk: Remaining
Dim G7 = F7 - D7 ' sec pk: G7
Dim H7 = If(F7 >= A6, A6, F7) ' sec pk: Carry Over
TextBox20.Text = F6 ' first pk: Remaining
TextBox19.Text = H6 ' first pk: Carry Over
TextBox16.Text = F7 ' sec pk: Remaining
TextBox15.Text = H7 ' sec pk: Carry Over
End Sub
Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox2.SelectedIndexChanged
TextBox21.Clear()
TextBox21.Focus()
End Sub
Private Sub ComboBox3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox3.SelectedIndexChanged
TextBox17.Clear()
TextBox17.Focus()
End Sub
End Class
(19-03-19, 10:37 PM)5000 كتب : [ -> ]لا أدري لماذا قمت بتكرار العملية الحسابية في كل حدث بالرغم من أنني وضعت لك الطريقة المختصرة والعملية في موضوعك السابق
الافضل أن تسمي الأدوات بمسميات واضحة بدلا من تغييرها في كل مشروع
فقد وجدت في موضوعك السابق أنه كان TaxtBox2 وأصبح في هذا الموضوع TextBox21
اكتب هذا الكود كامل
Public Class Form1
Private Sub Text_TextChanged(sender As Object, e As EventArgs) _
Handles ComboBox2.TextChanged, ComboBox3.TextChanged, TextBox21.TextChanged, TextBox17.TextChanged
ccc()
End Sub
Private Sub ccc()
Dim A6 = Val(ComboBox2.Text) ' first pk: Main
Dim C6 = Val(TextBox21.Text) ' first pk: Used
Dim F6 = A6 - C6 ' first pk: Remaining
Dim H6 = F6 ' first pk: Carry Over
Dim A7 = Val(ComboBox3.Text) ' sec pk: Main
Dim B7 = A7 + H6 ' sec pk: B7
Dim C7 = Val(TextBox17.Text) ' sec pk: Used
Dim D7 = A6 - C7 ' sec pk: D7
Dim E7 = D7 + A7 ' sec pk: E7
Dim F7 = If(H6 = 0, D7, E7) ' sec pk: Remaining
Dim G7 = F7 - D7 ' sec pk: G7
Dim H7 = If(F7 >= A6, A6, F7) ' sec pk: Carry Over
TextBox20.Text = F6 ' first pk: Remaining
TextBox19.Text = H6 ' first pk: Carry Over
TextBox16.Text = F7 ' sec pk: Remaining
TextBox15.Text = H7 ' sec pk: Carry Over
End Sub
Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox2.SelectedIndexChanged
TextBox21.Clear()
TextBox21.Focus()
End Sub
Private Sub ComboBox3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox3.SelectedIndexChanged
TextBox17.Clear()
TextBox17.Focus()
End Sub
End Class
شكرا اخي الكريم
سبب اختلاف التسميات هو ان مشروعي فيه عده مشاريع في برنامج واحد من خلال استخدامي الاداه Tabpages التي تم على اساسها عمل المشروع وبالتالي اختلفت التسميات لكثره استخدام الادوات .
اشكرك مره اخرى ان شاء الله تكون انت اضافه رائعه في المنتدى .
انا اقصد أن يكون لكل أسم يدل عليه، فعندها حتى لو نسخت الأدوات مع أكوادها فلن تواجه تعارض مع مسميات الأدوات الأخرى
مثال
ComboBox2 > firstPkMain
TextBox21 > firstPkUsed
ComboBox3 > secPkMain
TextBox17 > secPkUsed