• 0
Gaham

فيجول فوكس برو - استعراض الصور في النموذج

سؤال

سلام

تحياتي للجميع،،

قبل البدء

** إن التفاعل الجيد مع المشاركات يثري غزارة المعلومة ويؤصلها ويجعل صاحبها يتفانى في إعدادها

كما تجعل العضو ينشط في البحث عن الجديد والمفيد لأنه يتولد لديه الإحساس بالمتعة عند وجود التفاعل الجيد ..

** القراء الجيدة للمشاركة والمناقشة عن تفاصيها هو الهدف من المشاركة .. ناقش حتى لو كنت أنت الأفضل ..

** لست بحاجة إلى إعطاء الأمثلة من الهدي النبوي على هذا المبدء .. لكن لا بأس بالتذكير بأشهرها : جبريل يسأل عن الدين !!

.. أخبرني عن الاسلام .. عجبنا له! يسأله ويصدقه ..

.. أخبرني عن الساعة .. ما المسئول عنها بأعلم من السائل !! .. ( اللهم صلي على المسئول، وصلي على السائل ) + ومن نهج منهجهما يقتفي أثرهما .. آمين،،

لنبدأ إذاً في شرح التعليمات البرمجة التي في المثال

*/ تضمن المثال المرفق بعض ( ألأوامر ) و ( الدوال ) البرمجية

*// أما الأوامر فهي أوامر تحريك مؤشر السجلات ( SKIP, GOTO ) بأبسط صورها ..

*// أما الدوال فهي: دالة (الدليل الحالي ()CURDIR) ، دالة (التحقق من وجود الملف ()FILE) ، وأيضا دالة (التحويل إلى نص ()STR)

التعليمات البرمجية التالية توضح العمل :

post-10429-1188417049_thumb.gif

*\\ تهيئة السجلات للتحرك للخلف
SKIP -1 && تحريك المؤشر سجلا للخلف

** إيقاف المؤشر من الرجوع إلى الخلف إذا كان عند أول سجل
IF BOF()
GOTO TOP
ENDIF

** تنشيط النموذج عند كل تحرك
THISFORM.Refresh

post-10429-1188417059_thumb.gif

*\\ تهيئة المؤشر للوقوف عند أول سجل
GOTO TOP

** تنشيط النموذج
THISFORM.Refre

post-10429-1188417066_thumb.gif

*\\ تهيئة المؤشر للوقوف عند آخر سجل
GOTO BOTTOM

** تنشيط النموذج
THISFORM.Refresh

post-10429-1188417076_thumb.gif

*\\ تهيئة السجلات للتحرك للأمام
SKIP 1 && تحريك المؤشر سجلا للأمام

** إيقاف المؤشر من التقدم إلى الأمام إذا كان عند آخر سجل
IF EOF()
GOTO BOTTOM
ENDIF

** تنشيط النموذج عند كل تحرك
THISFORM.Refresh

هذه التعليمة تبين كيفية إدراج الصورة

*\\ وضع اسم الصورة ومسارها في المتغير ومن ثم التحقق من وجودها في الدليل

** CURDIR() ترجع الدليل الحالي للمشروع
** ALLTRRIM() تحذف المسافات الفارغة من اليمين واليسار
** STR() تحول القيمة الرقمية إلى نصية
** itemno هو اسم الحقل في الجول وليس اسمه في النموذج، وهو يحمل اسم الصورة

vPicturePath=CURDIR()+'drowings\'+ALLTRIM(STR(itemno))+'.JPG' && '.JPG' هو لاحقة اسم ملف الصورة

** FILE() تتحقق من أن الملف موجود في الدليل الافتراضي للمشروع
** 'DROWINGS\' هو اسم الدليل الذي يحتوي الصور تم دمجه إلى دليل المشروع في المتغير

** شكل إطار الصورة غير محبب ولذلك قمنا بإخفاءه
** تأخذ القيمة الصحيحة VISIBLE= .T. إذا كانت الصورة موجودة فإن

IF FILE(vPicturePath) && ما بين القوسين هو المتغير الذي يحتوي الدليل واسم الصورة
THIS.image1.Picture=vPicturePath
THIS.image1.Visible= .T. && القيمة الصيحة وإظهار إطار الصور
ELSE
THIS.image1.Visible= .F. && القمية الخاطئة وإخفاء إطار الصوة
endif

المثال المرفق :VFP_Proj01.zip

أتمنى للجميع التوفيق

القحم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

3 إجابة على هذا السؤال .

  • 0

السلام عليكم

درس جميل جدا فيه اشياء تهم جميع المبرمجين ( ربنا يزيدك )

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

مشكوور اخي على الدرووس .. شرح جميل ومفهوم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

مشكور أخي على العمل الرائع و المجهود ..

لكن توجد طريقة عملية أكثر وهي :

1) صنع form جديد (نموذج جديد) بطريقة visual (طريقة مرئية) .

2) صنع table جديد (جدول جديد) و أحد حقوله يكون من النوع BLOB تحفظ فيه بيانات الصورة لاحقاً

3) إقران الجدول بالنموذج أي إضافته إلى الـ Data Environment الخاصة بالنموذج

4) إضافة Image Control للنموذج

5) ربط الـ PictureVal Property الخاصة بالـ Image مع الـ BLOB Field

أعرف أن الخطوات تحتاج لشرح مفصّل و إذا كان هناك أحد الأخوة مهتم بالأمر فسنقوم بذلك بإذن الله.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .