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

اكتابة في الفلكس جريد

بدأه أبو زيد في 22 يوليو 2009 · 13 رد · 969 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أحباب اريد كود الكتابة في msflex

حقظكم الله

#2

وعليكم السلام أخي العزيز

لنفترض أنه لديك ركوردست معرف Rec وتريد أن تضيف بياناته في فلكس جريد

REC.MoveFirst
FOR i =1 TO REC.RECORDCOUNT
IF FLX.ROWS <= I tHEN FLX.ROWS = i +1

'العمود الأول
FLX.TEXTMATRIX(i,0) = TEXT1.TEXT
'العمود الثاني
FLX.TEXTMATRIX(i,1) = TEXT2.TEXT
'العمود الثالث
FLX.TEXTMATRIX(i,2) = TEXT3.TEXT

NEXT i

تم تعديل هذه المشاركة بواسطة راشدالعامري في 23 يوليو 2009 في 14:07

#3

يبدو أنني لم استطع توصيح سؤالي

بعد عرض البيانات في الفلكس أريد أعدل البيانات عن طريق الفلكس

حفظك الله

#4

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

اخي العزيز انا استخدم الطريقة التالية وارجو ان تنفعك

اولا وضع مربع نص في felxgrid وتجعل خاصية visible تساوي false

ثم تضيف كود

Public Sub MoveText()
	txt.Move fg1.Left + fg1.CellLeft, fg1.Top + fg1.CellTop, fg1.ColWidth(fg1.Col), fg1.RowHeight(fg1.Row)
	txt.Text = fg1.Text
End Sub

ثم في حدث change لمربع النص تضع الكود التالي

Private Sub txt_Change()
 fg1.TextMatrix(fg1.Row, fg1.Col) = txt.Text

End Sub

وذلك لوضع قيمة text في felxgrid

ومن ثم في حدث Click ل felxgride

Call MoveText
	txt.Visible = True

ملاحظة / fg1 هنا هي felxgrid

وال txt هو مربع النص

#5

جميل لحد هنا ...... نأتي للحفظ بالقاعدة ........ كيف ؟

حفظكم الله

#6

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

sqlss = "select * from tmfines "
If rs2.State = adStateOpen Then rs2.Close
rs2.Open sqlss, db, adOpenKeyset, adLockPessimistic
For i = 1 To fg1.Rows - 1
 rs2.AddNew
		fg1.Col = 0
		fg1.Row = i
		rs2![sn] = fg1.Text
		fg1.Col = 1
		rs2![plateno] = fg1.Text
		fg1.Col = 2
		rs2![platecode] = fg1.Text
		fg1.Col = 3
		rs2![Source] = fg1.Text
		fg1.Col = 4
		rs2![Date] = fg1.Text
		fg1.Col = 5
		rs2![finesno] = fg1.Text
		fg1.Col = 6
		rs2![DriverName] = fg1.Text
		fg1.Col = 7
		rs2![drivercode] = fg1.Text
		fg1.Col = 8
		rs2![expense] = fg1.Text
		fg1.Col = 9
		rs2![project] = fg1.Text
		fg1.Col = 10
		rs2![owner] = fg1.Text
		fg1.Col = 11
		rs2![amount] = fg1.Text
		fg1.Col = 12
		rs2![receipt] = fg1.Text

  rs2.Update
  Next i

ولكن يجب ملاحظة اذا كانت البيانات للتعديل اي انك جلبت البيانات من جدول في القاعدة فيجب اضافة كود

لحذف البيانات السابقة ومن ثم الاضافة الجديدة

بالتوفيق

تم تعديل هذه المشاركة بواسطة AHMAD KALIL في 26 يوليو 2009 في 07:57

#7

بارك الله ..... فيك

هل من مزيد حول الأداة

#8

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

لارسال بيانات من جدول الى felxgrid وهي عكس عملية الحفظ من felxgrid الى جدول

Dim n As Integer
sqls2 = "select * from fines "
If rs3.State = adStateOpen Then rs3.Close
rs3.Open sqls2, db, adOpenKeyset, adLockPessimistic
n = rs3.RecordCount
If n < 1 Then
Exit Sub
End If
 rs3.MoveFirst

		fg3.Rows = n + 2
	  For i = 1 To n
		fg3.Col = 1
		fg3.Row = i + 1
		fg3.Text = rs3.Fields("source")
		fg3.Col = 2
		fg3.Text = rs3.Fields("date")
		fg3.Col = 3
		fg3.Text = rs3.Fields("finesno")
		fg3.Col = 4
		fg3.Text = rs3.Fields("drivername")
		fg3.Col = 5
		fg3.Text = rs3.Fields("drivercode")

	rs3.MoveNext
	Next i

وبامكانك في حدث click لـ felxgrid اذا اردت قيمة معينة منها ووضعها في text مثلا

fg3.Col = 5
Me.Text6 = fg3.Text

في هذه الحالة عند نقر felxgrid سيضع قيمة العامود الخامس في text6

#9

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

وهذا كود تحويل من felxgrid الى ملف اكسل وبصراحة هذا حصلت عليه من احد الاعضاء

Dim i As Long
Dim n As Long
On Error Resume Next
Set anas = GetObject(, "Excel.Application")
If Err.Number Then
   Err.Clear
   Set anas = CreateObject("Excel.Application")
   If Err.Number Then
	  MsgBox "Can't open Excel."
   End If
End If
anas.Visible = True
Set abbas = anas.Workbooks.Add
AppActivate "fg1 To Excel Demo"
For i = 0 To fg1.Rows - 1
	fg1.Row = i
	For n = 0 To 4
		fg1.Col = n
		abbas.ActiveSheet.Cells(i + 1, n + 1).Value = fg1.Text
	Next
Next
#10

هيه حفظك الله .......... هل من مزيد

#11

شكراً لأخي الحبيب

AHMAD KALIL

على هذا الشرح الجميل

وعلى هذه الأمانة في النقل

---------

وللأخ السائل تفضَّل

____________________________________________.rar

#12

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

حياك الله اخي انس

لقد اتني الان فكرة جديدة لانشاء felx وهي من خلال الفورم اي اثناء التشغيل

ولكن لانشغالي لم اكمل الفكرة

حيث نقوم بوضع تكست على الفورم وكذلك felxgrid وعند وضع رقم داخل التكست تتكون اعمدة بعدد الرقم المدخل ولكن نحتاج الى زيادة الكود

بحيث نجعلة يقرا من ملف او شيء اخر العناوين

Dim i, fg
i = Val(Me.Text1)
fg1.Cols = i
fg1.Rows = 2
For fg = 0 To i - 1
fg1.Row = 0

fg1.Col = fg
fg1.Text = Me.Text2
Next fg

حيث fg1 هو اسم felxgrid

و الـ fg هو عداد

#13

الله أكبر ........ وفق الله الجميع

هيه ........................ المزيد

#14

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

هذه الدالة للتاكد من felxgrid فيها بيانات قبل عملية الخزن وهي ايضا من احد الاخوة المشاركين في المنتدى

Public Function chkfg() As Boolean
On Error Resume Next
Dim i As Integer, j As Integer
For i = 1 To fg1.Cols - 1
fg1.Col = i
For j = 1 To fg1.Rows - 1
fg1.Row = j
If fg1.Text <> vbNullString Then
chkfg = True
Exit Function
End If
Next
Next

وتضع الكود التالي في زر الحفظ

If chkfg = True Then GoTo pp2:
 MsgBox " Pls Enter at least one Vehicle"

وهذه العملية اذا اردت المستخدم ان يدخل حركة واحدة على الاقل في جدول felx

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