الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

شيك بوكس في الدات قرايد

بدأه & الأمل & في 10 أبريل 2012 · 19 رد · 1,509 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

إخوتي الكرام كيف يمكن ان اجعل عمود في الدلتا قرايد تكون خلاياه شيك بوكس

جزاكم الله خيرا

#2

وعليكم السلام ..

عند إضافة عمود في DataGridView قم بوضع خاصية Cloumntype إلى DataGridViewCheckBoxColumn

أما في حال ربطها بمصدر بيانات ونوع الحقل yes/no مثلاً .. فقم بكتابة الكود التالي :

CheckBox1.BindingSource.Add("Checked",ds,"fieldN")

حيث : DS هو مصدر البيانات .

FieldN : اسم الحقل في قاعدة البيانات .

تم تعديل هذه المشاركة بواسطة عاشق للبرمجة في 10 أبريل 2012 في 23:12

... إذا كنت تعتقد أن مشاركتي مفيده ، الرجاء قم بتقييمي ...

%2525D8%2525A8%2525D8%2525B5%2525D9%252585%2525D8%2525A9%252B%2525D8%2525B9%2525D9%252584%2525D9%252585%252B%2525D9%252588%2525D8%2525B5%2525D8%2525B1%2525D8%2525AE%2525D8%2525A9%252B%2525D8%2525A7%25

#3

شكرااا لك عاشق البرمجه

بمعنى انه يخزن حالته true or false في قاعده البيانات صحيح ؟

جزاك الله خير

#4

العفو

نعم أختي ...

... إذا كنت تعتقد أن مشاركتي مفيده ، الرجاء قم بتقييمي ...

%2525D8%2525A8%2525D8%2525B5%2525D9%252585%2525D8%2525A9%252B%2525D8%2525B9%2525D9%252584%2525D9%252585%252B%2525D9%252588%2525D8%2525B5%2525D8%2525B1%2525D8%2525AE%2525D8%2525A9%252B%2525D8%2525A7%25

#5

يخزن من نوع yes or no

اضفت شيك بوكس من سمارت تاسك .. add coulmns شيك بوكس ..

المشكله ان اسمها ضمن الادوات المدرجه coulmn1

جربت الكود التالي في فورم لود

Column1.BindingSource.Add("Checked", ds, "accept_fie")

وجربت

DataGridViewCheckBoxColumn.BindingSource.Add("Checked", ds, "accept_fie")

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

شاكره لك

#6

السلام عليكم

أخي الكريم عاشق للبرمجة جزاك الله خيرا

هل العمود الذي في الداتا قرايد عند ربطه بالحقل yes/no من قاعدة البيانات اكسس

يكون العمود في الداتا قرايد خلاياه شيك بوكس

جزاك الله خيرا

#7

مش مهم يكون شيك بوكس في الداتا قريد

انظري المثال في المرفقات

datagridchecked.rar

#8

اخي الكريم

جزاك الله خيرا

اعمل على قاعدة البينات اكسس

لذلك عند فتح مثالك لايتم ربط قاعدة البانات بالداتا قرايد

اخي الكريم على العموم اتبعت ماذكرته سابق بجعل الحقل نعم/لا وظبط المثال

اخي الكريم كيف اجمع عدد الشك بوكس التي تم اختيارها

جزاك الله خيرا

#9

تم عمل المثال بقاعدة بيانات نوع اكسس 2007

تم تحويل قاعدة البيانات على 2003

وتم عمل المطلوب من انه يميز اللي معمول عليه صح او بدون

في المرفقات

datagridchecked.rar

تم تعديل هذه المشاركة بواسطة codenew في 17 أبريل 2012 في 03:37

#10

اخي الكريم جزاك الله خيرا

تم فتح المثال

كيف اجمع عدد الشيك بوكس التي تم اختيارصح لها

يميز اللي معمول عليه صح او بدون

المطلوب جمع ماعمل عليه صح (كل شيك بوكس صح يجسب ب (1) ثم يجمع الكل ويوضع الجواب في اخر خلية)

مثال

عندي 1- عامود اسماء دورات

2 - العمود الثاني به الشيك بوكس في حال الموظفة اخذت الدورة اضع صح في الشيك بوكس

3-زر عند النقرعليه يحسب مجموع الدورات يضع الواب في اخر خلية

سهل الله امرك

#11

آخر خلية في نفس الصف

أو في آخر صف في الأسفل

على العموم هذا الكود والناتج حطيه في اي مكان تبيه

بإفتراض ان الحقل الثاني اللي يحمل اداة الشك بوكس

 Dim total As Integer = 0

        For i = 0 To DataGridView1.Rows.Count - 2
            If DataGridView1.Rows(i).Cells(1).Value = True Then
                total += 1
            End If
        Next

        MsgBox(total)

total هو المجموع

تم تعديل هذه المشاركة بواسطة codenew في 17 أبريل 2012 في 04:35

#12

أخي الكريم codenew

جزاك الله خيرا

#13
& الأمل & كتب:

أخي الكريم codenew

جزاك الله خيرا

وياك يارب

#14

السلام عليكم

للاسف أخي الكريم لم يفلح الكود ارجوا التفضل بمساعدتي في ايجاد الكود الصحيح جزاك الله خيرا

المطلوب : جمع عددالشيك بوكس بحيث كل شيك بوكس يتم وضع شيك له تحسب قيمة (1)

ثم يجمع العمود ووضع القيمة في مربع التص

هذا رابط للملف بتطبيق الكود السابق

http://www.7ozn.com/do.php?filename=24_05_2012_583713378414021.rar

جزاك الله خيرا

#15

وعليكم السلام ورحمة الله وبركاته

المعذرة لم أشاهدها غير الآن

شفت المثال كله تمام

يتم تعديل الكود الموجود في بوتن 2 (المسمى بعدد الدورات) كالتالي :

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim total As Integer = 0
        Dim total2 As Integer = 0

        For i = 0 To DataGridView1.Rows.Count - 2
            If DataGridView1.Rows(i).Cells(2).Value = True Then total += 1

            If DataGridView1.Rows(i).Cells(3).Value = True Then total2 += 1
        Next
        TextBox1.Text = (total)
        TextBox2.Text = (total2)
    End Sub

علماً كان عندك مشكلة فقط في رقم الخلية كان يجمع الخلية رقم 1 وهنا الخطأ

---------------------------------

أيضاً يمكن عمل الكود بالإستغناء عن المتغيرات كالتالي :

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        TextBox1.Text = 0
        TextBox2.Text = 0

        For i = 0 To DataGridView1.Rows.Count - 2
            If DataGridView1.Rows(i).Cells(2).Value = True Then TextBox1.Text += 1

            If DataGridView1.Rows(i).Cells(3).Value = True Then TextBox2.Text += 1
        Next

    End Sub

والسبب لأن المتغيرات تستهلك وتحجز جزء من رامات الجهاز وما دام اننا نستطيع الإستغناء عنها فهو الأفضل

بالتوفيق وأي سؤال تفضلي

تم تعديل هذه المشاركة بواسطة codenew في 25 مايو 2012 في 10:23

#16

هذا خارج الموضوع ولكن انا اعتبره أساسي هو كود يعمل صف بلون والصف الآخر بلون آخر والسبب لتميز الصف عن الآخر

Private Sub DataGridView1_CellFormatting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) Handles DataGridView1.CellFormatting
        DataGridView1.RowsDefaultCellStyle.BackColor = Color.AliceBlue
        DataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.LemonChiffon
        DataGridView1.RowHeadersWidth = 60    'زيادة حجم عرض خانة التسلسل
    End Sub

--------------------------------------------------------

أما هذان الكودين هم أصلاً كود واحد ويعمل لترتيب الصفوف إبتداء من رقم 1 إلى آخر الداتا قريد

هنا عند اضافة صف جديد يبدا الترتيب

    Private Sub DataGridView1_RowsAdded(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewRowsAddedEventArgs) Handles DataGridView1.RowsAdded
        For i As Integer = 0 To Me.DataGridView1.Rows.Count - 1
            Me.DataGridView1.Rows(i).HeaderCell.Value = (i + 1).ToString
        Next
    End Sub

وهذا عند حذف صف يعيد الترتيب مره أخرى

    Private Sub DataGridView1_RowsRemoved(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewRowsRemovedEventArgs) Handles DataGridView1.RowsRemoved
        For i As Integer = 0 To Me.DataGridView1.Rows.Count - 1
            Me.DataGridView1.Rows(i).HeaderCell.Value = (i + 1).ToString
        Next
    End Sub

مثال على تمييز الصفوف بالألوان وترتيب أرقام الصفوف

post-257900-084336200 1337932224_thumb.p

بالتوفيق مره أخرى

المرفقات
untitled.PNG

تم تعديل هذه المشاركة بواسطة codenew في 25 مايو 2012 في 10:50

#17

أخي الكريم

جزاك الله خيرا و سهل الله امرك

#18

وياك والمسلمين يارب

#19

أخي الكريم

اذا كان عندي مثلا عدد سبعة تكست يوكس في كل منهم رقم يتغير في كل مرة انقر على زر اليوتن

كيف يمكن اجعل ترتيبهم يكون تنازليا

بحيث يتقير مكانهم على قيمة العدد الموجود مثال ( اذا كان الرقم في التكست ثلاثة هو اكبرالاعداد ياتي اولا ومن ثم التكست الذي ادنى منه قيمة وهكذا)

جزاكم الله خبرا

أخي الكريم

اذا كان عندي مثلا عدد سبعة تكست يوكس في كل منهم رقم يتغير في كل مرة انقر على زر اليوتن

كيف يمكن اجعل ترتيبهم يكون تنازليا

بحيث يتقير مكانهم على قيمة العدد الموجود مثال ( اذا كان الرقم في التكست ثلاثة هو اكبرالاعداد ياتي اولا ومن ثم التكست الذي ادنى منه قيمة وهكذا)

جزاكم الله خبرا

#20

جزاكم الله خيرا

تم تعديل هذه المشاركة بواسطة & الأمل & في 27 مايو 2012 في 09:35

مواضيع مشابهة