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

هل يمكن ادخال البيانات في MsFlexGrid كما في اكسل

مغلق
بدأه a-husean في 9 مايو 2006 · 5 رد · 1,271 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

هل يمكن ادخال البيانات في MsFlexGrid كما في اكسل بدون input box

ومثلا ان يكون العمود الثالث ناتج ضرب العمود الاول والثاني

#2

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

بالتأكيد أخي ممكن ولكن يكون على عدة طرق...

يفضل البعض وجود تكتس بوكس او الكتابة مباشرة بأستخدام ايفينت زي كي بريس او كي داون.

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

Option Explicit
Dim strLastText As String
Private Sub Form_Load()
With MSFlexGrid1
    .Rows = 10
    .Cols = 4
    .Col = 1
    .Row = 1
    .CellBackColor = vbYellow
End With
End Sub

Private Sub MSFlexGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
With MSFlexGrid1
    Select Case KeyCode
        Case Is = vbKeyDelete
            .Text = vbNullString
    End Select
End With
End Sub

Private Sub MSFlexGrid1_KeyPress(KeyAscii As Integer)
With MSFlexGrid1
    Select Case KeyAscii
        Case 38, 37, 39
            '// Do nothing Those text are not good to be used in normal Useing of Database
            '// ignore it if you feel you can handle those ascii
            
        Case Is = 27        '// Esc pressed [undo changes]
            .Text = strLastText
        Case Is = 9         '// Tab pressed
            .Col = (.Col + 1) Mod .Cols
            If .Col = 0 Then .Col = 1
            
        Case Is = 13        '// Enter key pressed
            .Row = (.Row + 1) Mod .Rows
            If .Row = 0 Then .Row = 1
            
        Case Is = 8         '// Backspace pressed
            If Len(.Text) = 0 Then Exit Sub
            .Text = left(.Text, Len(.Text) - 1)
            
        Case Else           '// Text chars
            Select Case .CellBackColor          '// just for a better enhancement

                Case vbYellow           '// Yellow back ground means Numbers ONLY
                    If Chr(KeyAscii) >= "0" And Chr(KeyAscii) <= "9" Then
                        .Text = .Text & Chr(KeyAscii)
                    End If
                
                Case vbBlue                 '// Date data type//
                    '// Todo
                    
                Case vbWhite, 0            '// White or None means Alphanumaric text allowed
                    .Text = .Text & Chr(KeyAscii)
                End Select
               
    End Select
End With
End Sub

Private Sub MSFlexGrid1_RowColChange()
'// Save the previous text.. for Undo Edit
    strLastText = MSFlexGrid1.Text
End Sub

Private Sub MSFlexGrid1_LeaveCell()
    DrawCellLostFocus
End Sub

Private Sub MSFlexGrid1_EnterCell()
    DrawCellGotFocus
End Sub

Private Sub DrawCellGotFocus()
'// Todo for a better look [ Fill region with an opacity of whatever shaded color]
'// Change the forcolor to Blue
MSFlexGrid1.CellForeColor = vbBlue
End Sub
Private Sub DrawCellLostFocus()
'// Todo for a better look [ Fill region with an opacity of whatever shaded color]
'// Return the font color back to black
MSFlexGrid1.CellForeColor = vbBlack
End Sub

من سجن عكا وطلعــت جنـازة...

محمد جمجوم و فؤاد حجـازي

جازي عليهم يا شعبــي جازي...المندوب السامي وربعه عموما

محمد جمجوم ومع عطا الزير...فؤاد حجـــــــــازي عز الذخيـره

فلـسطـين

#3

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

ان شاء الله بشاركم

#4

في بعض من التعقيد

انا سوف اطرح لك حل اسهل شوية

في ايفينت كي اب قم بعمل اب ديت للجدول المربوط مع الفليكس وتكون الفليكس خاصية الاضافة متاحة

اوكية لو مفهمتش حاجة ممكن اعمل لك مثال

Linux System Admin

#5

في بعض من التعقيد

انا سوف اطرح لك حل اسهل شوية

في ايفينت كي اب قم بعمل اب ديت للجدول المربوط مع الفليكس وتكون الفليكس خاصية الاضافة متاحة

اوكية لو مفهمتش حاجة ممكن اعمل لك مثال

Linux System Admin

#6

في بعض من التعقيد

انا سوف اطرح لك حل اسهل شوية

في ايفينت كي اب قم بعمل اب ديت للجدول المربوط مع الفليكس وتكون الفليكس خاصية الاضافة متاحة

اوكية لو مفهمتش حاجة ممكن اعمل لك مثال

Linux System Admin

هذا الموضوع مغلق.

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