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

كيف أغير عرض العمود حسب المحتويات في FlexGrid

مغلق
بدأه فنكشن في 27 فبراير 2005 · 11 رد · 878 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

1- كيف اجعل عرض العمود في MSHFlexGrid يتغير تلقائيا حسب محتوياته ؟ يعني إذا كان لدي العمود رقم 1 يحتوي الإسم ، فإنه أحيانا يكون الإسم كبير أكبرمما وضعته فيشوه هذا شكل الأداة الى حد ما ، واذا وضعت عرضا كبيرا وكان الإسم صغيرا فإن شكل العمود سيكون مشوها أيضا وسيغطي مساحه كانت الاعمده التالية اولى بشغلها ... فكيف افعل ذلك ؟

2- وكيف انتقل الى السجل الذي يتم تظليله من هذه الأداة ؟ اي لو ظللت الصف رقم 5 ( أي السجل الخامس من الجدول ) فكيف اجعل كائن RS ينتقل تلقائيا الى السجل رقم 5 ؟

والشكر لكل من يساعدني بأي شكل من الأشكال وبأي طريقة من الطرق

#2

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

أخى العزيز فنكشن

أنا سعيد باللقاء معك مجددا

وإجابة لسؤاليك - أجتهد وبالله التوفيق

السؤال الأول

 With MSHFlexGrid1
 Dim Tw As Double
   For C = 0 To .Cols - 1
     Tw = 0
     For R = 0 To .Rows - 1
       If TextWidth(.TextMatrix(R, C)) > Tw Then Tw = TextWidth(.TextMatrix(R, C))
     Next R
     .ColWidth(C) = Tw + 150
   Next C
 End With

فقط اكتب الكود السابق بعد ملئ الجريد بالبيانات، ولكن يفضل أن يكون حجم ونوع الخط المستخدم فى النموذج هو نفسة المستخدم فى الجريد لتكون النتيجة دقيقة

إجابة السؤال الثانى:

أنت تريد أن تبحث عن سجل فى الريكوردسيت، صح؟

ولكن بمعلومية الصف المحدد فى الفليكس

ستذهب للحدث MsHFlexGrid_SelChange فهو الذى يشعر بالتغيير فى الالتحديد فى الجريد

وتبحث عن الحقل بمعلومية القيمة الموجودة فى الخلية MsHFlexGrid1.TextMatrix(MsHFlexGrid1.Row,MsHFlexGrid1.Col)

ولو كان كلامى غامض قليلا أعطينى مثالك وأنا أشرح لك عليه

لقد قصدت أن أعطيك القيمة التى تبحث من خلالها وهى عبارة عن الخلية المحددة

وطبعا منتظر ظهور أخطاء كثيرة - يمكنك تخطيها بجملة On Error Resume Next

أو اصطيادها إذا توقعتها حسب برنامجك وتصميمك له

والله من وراء القصد وهو سبحانه يهدى السبيل

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

رواه الطبراني في الكبير

#3

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

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

وسررت ايضا بإجابه الأسئلة والآن سأطبقها وسأعطيك النتيجه واخبرك بأي خطأ او مشكله تظهر لدي ..

معي شكري لك

#4

اخي العزيز

الكود الاول ما عليه كلام ابدا ...

بالنسبه للكود الثاني ، فقد غمض علي الامر وها انا ارفق المشروع لكي تعدل عليه وتخبرني بالتعديل حتى اعرف هذه الطبخه جيدا ..

ولكن اتمنى منك ان تقوم بذلك بطريقتين :

- الاولى : الطريقه التي اقترحتها مشكورا بالانتقال الى السجل وذلك من خلال البحث عن السجل المطابق لبيانات السجل المحدد في الأداة ( MSHFlexGrid )

الثانية : من خلال معرفه رقم الصف المحدد يتم الانتقال الى السجل الذي يماثله في الجدول وذلك بالطريقه Move التابعه للكائن Recordset ...

شاكرا لك تعاونك وادعو لك بالتوفيق في ما يحب ويرضاه رب العالمين .

MSHFlexGrid.rar

#5

للرفع

#6
اقتباس
بالنسبه للكود الثاني ، فقد غمض علي الامر وها انا ارفق المشروع لكي تعدل عليه وتخبرني بالتعديل حتى اعرف هذه الطبخه جيدا ..

ولكن اتمنى منك ان تقوم بذلك بطريقتين :

- الاولى : الطريقه التي اقترحتها مشكورا بالانتقال الى السجل وذلك من خلال البحث عن السجل المطابق لبيانات السجل المحدد في الأداة ( MSHFlexGrid )

بحمد الله عدلت لك مثالك حسب ما طلبته أنت فى الطريقة الأولى

أما الطريقة الثانية rs.Move فيبدوا أنى لا أعرفها أو لم أفهمك

أرجوا أن يكون ما أضفته مفيدا لك

وآسف على تهميش بعض كودك أرجوا أن لا تعتبر هذا تقليلا من شأنه ولكنه لا يناسب تعديلى فقط أو عندى فكرة أحببت أن أريها لك

MSHFlexGrid2.zip

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

رواه الطبراني في الكبير

#7

شكرا اخي على تجاوبك الدائم ...

ما كنت اقصده بالطريقه RS.Move ولم يتضح لديك سأوضحه بطريقة اخرى ، هذه الطريقة تمكننا من الانتقال الى السجل الذي نعطيها رقمه ، فلو كتبنا rs.move 2 فسينتقل الى السجل الثاني في الجدول !! وانا الآن ما احتاجه هو ان اعرف رقم السجل من خلال اداة الجدول فكيفك يمكنني ذلك ؟

وبشان تعديل الكود ولا يهمك اعمل اللي تريده ما دام ان ذلك ضروري ومهم ..

شكرا مجددا

#8

بسيطة ولا يهمك

عدل الكود فى المديول وخليه كالتالى

Public Sub ViewRecord(R As Long) ''**نبحث بمعلومية مكان السجل     '(Nm As String)  ''*** وضعنا القيمة التى يبحث عنها فى حقل الاسم
  If Not rs.State = adStateOpen Then    ''*** تأكد أنها ليست مفتوحة من قبل
    rs.Open "tbAgent", db, adOpenStatic, adLockPessimistic
  End If
            Form2.Show:     Form2.ZOrder 0   ''*** إحضار للأمام
            Form2.Text1.Text = "":        Form2.Text2.Text = ""
            rs.Move R
            Form2.Text1.Text = "" & rs![sName]  '''*** I used this ("" & ) to Avoide the Null
            Form2.Text2.Text = "" & rs![sCity]
    If Not rs.State = adStateClosed Then rs.Close
End Sub

وعندما تطلبه من الحدث تطلبه كالتالى

Private Sub MSHFlexGrid1_SelChange()
  With MSHFlexGrid1
    ViewRecord .Row - .FixedRows   '.TextMatrix(.Row, 1)
  End With
End Sub

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

رواه الطبراني في الكبير

#9

لكن لو تآخذ برأيى

الطريقة الأولى أدق وأضمن لأنك تبحث عن سجل مهما تغير مكانه سيجده

أما الثانية فهناك احتمال أن يتغير مكان السجل مع العمل على الريكورد سيت أو الجدول

هذا والله أعلم

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

رواه الطبراني في الكبير

#10

اخي العزيز والله ما اعرف ايش اقولك ،، المفروض انه اداره المنتدى تخليك خبير رسمي معتمد اقل شي ...

ما شاء الله عليك ... تفهمت كل طلباتي وقدمت الحلول المناسبه في وقتها ..

ولقد طلبت طريقتين للفائده فقط لا غير ... شكرا لك مجددا

#11

الله يسعدك

إزاى يخلونى خبير وأنا ما علمنيش غيرهم

بصراحة أنا مصدر معلوماتى الحقيقية كان منتدى فيجوال بيسك دوت نت الله يرجعه لنا - ثم هذا المنتدى الرائع الذى أسأل الله أن يزيده رفعة ورقى

إدعيلى بس ربنا يوسع علينا فى العلم والرزق ويسهل لنا كل أمر عسير ويجعل كل جهدنا وهدفنا هو خدمة الإسلام والمسلمين

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

رواه الطبراني في الكبير

#12

آآآآمين يا رب العالمين

منتدى فيجوال بيسك دوت نت يا رب يرجع ،،، هو كنز حقيقي ما شاءالله لكن هذا قضاء وقدر :unsure:

تم تعديل هذه المشاركة بواسطة فنكشن في 1 مارس 2005 في 15:45

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…