منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : ارجو المساعدة في flexgrid
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
اخواني ارجو مساعدتي في الفلكس جريد بحيث اذا تم الظغط على انتر يذهب المؤشر الى خلية رقم 4 (الكمية)
ارفقة المثال ليتم التعديل عليه
[ATTACH]3863[/ATTACH]
السلام عليكم

- أنا لم أشاهد مثالك لأني حالياً أتصفح وأرد بواسطة الموبايل ، على العموم أولاً لابد أن تكون طريقة التركيز في أداة الفليكس بالخلية وليس بالصف وتستطيع تغيير نوع التركيز عن طريق خصائص أداة الفيكس ، وعادةً الإفتراضي يكون التركيز على الخلية لذلك سأفترض أن مثالك كذلك ، عندها إستخدم هذا الكود :

كود :
Private Sub MSFlexGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
MSFlexGrid1.Col = 4
MSFlexGrid1.SetFocus
End If
End Sub

- تحياتي .
مشكور اخوي نجح معي الكود
لدي الفلكس جريد فيها 100 سطر اريد ان احفظ السطور الذي تحتوي على بيانات وقد جربيت الكود التالي فهل هي الطريقة الصحيحة ارجو الافادة
For aloop = 1 To grid.Row - 1
If rs.State = 1 Then rs.Close
rs.Open "save", DB, adOpenStatic, adLockPessimistic
rs.AddNew
rs![d1] = grid.TextMatrix(aloop, 1)
rs![d2] = grid.TextMatrix(aloop, 2)
rs![d3] = grid.TextMatrix(aloop, 3)
rs.Update
Next aloop


MsgBox "Êã ÍÝÙ ÈíÇäÇÊ ÇáÝÇÊæÑÉ ÈäÌÇÍ ", vbInformation, "ÍÝÙ"
For aloop = 1 To grid.Row - 1
grid.TextMatrix(aloop, 1) = ""
grid.TextMatrix(aloop, 2) = ""
grid.TextMatrix(aloop, 3) = ""
grid.TextMatrix(aloop, 4) = ""
grid.TextMatrix(aloop, 6) = ""
Next aloop



End If



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

- إستخدم هذا الكود :

كود :
Private Sub Command1_Click()

Dim MaxLen() As Integer
Dim I As Long
Dim N, F As Integer
Dim CurrentLine As String

ReDim MaxLen(MSFlexGrid1.Cols - 1) As Integer

For I = 0 To MSFlexGrid1.Rows - 1

    For N = 0 To MSFlexGrid1.Cols - 1
        If Len(Trim(MSFlexGrid1.TextMatrix(I, N))) > MaxLen(N) Then
           MaxLen(N) = Len(Trim(MSFlexGrid1.TextMatrix(I, N)))
        End If
    Next

Next

If Dir$(App.Path & "\MSFlexGrid1.Txt") <> "" Then
   DeleteFile App.Path & "\MSFlexGrid1.Txt"
   DoEvents
End If

F = FreeFile
Open App.Path & "\MSFlexGrid1.Txt" For Append As #F

For I = 0 To MSFlexGrid1.Rows - 1

    CurrentLine = ""

    For N = 0 To MSFlexGrid1.Cols - 1
        If Len(Trim(MSFlexGrid1.TextMatrix(I, N))) < MaxLen(N) Then
           CurrentLine = CurrentLine & Trim(MSFlexGrid1.TextMatrix(I, N)) & Space(MaxLen(N) - Len(Trim(MSFlexGrid1.TextMatrix(I, N)))) & Space(5)
        Else
           CurrentLine = CurrentLine & Trim(MSFlexGrid1.TextMatrix(I, N)) & Space(5)
        End If
    Next

Print #F, CurrentLine
DoEvents

Next

Close #F
DoEvents

MsgBox "تم التصدير بنجاح", vbOKOnly + vbInformation, "تنبيه"

End Sub

- تحياتي .