النتائج 1 إلى 5 من 5
  1. #1
    الصورة الرمزية فهد المطلق
    فهد المطلق غير متصل مشرف ملتقى مطوري نظم المعلومات الجغرافية
    تاريخ التسجيل
    Aug 2007
    المشاركات
    132

    إضافة إداة برمجية باستخدام Vba

    [align=center]أهلاً و مرحباً بكم أخواني أعضاء منتدانا الغالي[/align]


    حسب وجهة نظري أن الهدف من التعامل مع برمجة نظم المعلومات الجغرافية لا يخرج عن هدفين أساسين:

    1_ وجود قصور معين داخل البرنامج وياحاول المبرمج معالجة هذا القصور بمايخدم هدفه.

    2_ قد يكون الوصول إلى نتيجة معينه معقداً داخل البرنامج فيحاول المبرمج تسهيل هذا العمل.



    ونحن من خلال هذا الدرس البسيط نحاول تحقيق الهدف الثاني وهو وضع إيقونة داخل البرنامج تسهل إضافة فورم بمسمى جديد (Add Form)

    [align=center]ولآن نبدأ العمل على بركة الله

    الوصول الى برنامج الفيجوال بيسك التطبيقي (VBA ) داخل برنامج نظم المعلومات الجغرافية انظر الشكل التالي:




    تفتح لك الصفحة التالية:



    ثم نرسم الايقونات على النافذة كما في الشكل التالي:




    بعد ذلك نضغط دبل كلك على ايقونة (إضافة فورم) تفتح لنا نافذة كتابة الاكواد البرمجية تلصق فيها الكود التالي:

    كود:
    Dim pMxDoc As IMxDocument 
      Set pMxDoc = ThisDocument
      
      'Create a new map
      Dim pMap As IMap
      Set pMap = New Map
      pMap.Name = TextBox1
        
      'Create a new MapFrame and associate map with it
      Dim pMapFrame As IMapFrame
      Set pMapFrame = New MapFrame
      Set pMapFrame.Map = pMap
      
      'Set the position of the new map frame
      Dim pElement As IElement
      Dim pEnv As IEnvelope
      Set pElement = pMapFrame
      Set pEnv = New Envelope
      pEnv.PutCoords 0, 0, 5, 5
      pElement.Geometry = pEnv
      
      'Add mapframe to the layout
      Dim pGraphicsContainer As IGraphicsContainer
      Set pGraphicsContainer = pMxDoc.PageLayout
      pGraphicsContainer.AddElement pMapFrame, 0
      
      'Make the newly added map the focus map
      Dim pActiveView As IActiveView
      Set pActiveView = pMxDoc.ActiveView
      If TypeOf pActiveView Is IPageLayout Then
        Set pActiveView.FocusMap = pMap
      Else
        Set pMxDoc.ActiveView = pMap
      End If
      
      'Refresh ActiveView and TOC
      pActiveView.Refresh
      pMxDoc.CurrentContentsView.Refresh 0

    بعد ذلك تحفظ عملك وتغلق صفحة البرمجة، ثم نقوم بإضافة إيقونة على واجهة برنامج نظم المعلومات الجغرافية كما في الشكل التالي:



    تفتح لك النافذة التالية واتبع الخطوات الموضحة على الصورة



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



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






    سوف تفتح لنا نافذة كتابة الاكواد أكتب الكود التالي:

    كود:
    Dim frm2 As New UserForm1
    frm2.Show
    بهذا ينتهي عملنا وسوف تكون النتيجة كما في الشكل التالي:

    [/align]


    ونحن بهذا العمل نحاول رمي حجر صغير يحرك الماء الراكد في برمجة نظم المعلومات الجغرافية، وأطلب من كل العارفين في هذه المجال تقديم دروس تطبيقية حتى كل واحد يتشجع في تقديم ماعنده.
    [align=center][mshosh2]http://up1.mlfnt.net/images/nyfiy0fvtw9p7m9yp1n1.gif[/mshosh2][/align]

    [align=center]موقع الشخصي
    [http://faculty.ksu.edu.sa/falmutlaq/default.aspx[/align]
  2. #2
    تاريخ التسجيل
    Mar 2008
    المشاركات
    221

    رد : إضافة إداة برمجية باستخدام Vba

    الأخ العزيز / فهد المطلق ..

    متابع لمواضيعك البرمجية الرائعة التي تعكس بدورها الشخص الرائع الذي يقوم بها ........

    كلمة شكرا لا تكفى ... ولكن أرجو أن تقبلها فألف شكر لك على جهودك الكبيرة ...
  3. #3

    رد : إضافة إداة برمجية باستخدام Vba

    شكرا والف شكرا الى الاخ العزيز فهد المطلق .... والذي افادنا كثيرا بهذا الموضوع الشيق ونتمنى منه
    اني يضيف لنا ماهو جديد ومفيد
  4. #4

    رد : إضافة إداة برمجية باستخدام Vba

    بارك الله بك اخ فهد مككن تعطينا مثال كيف اعرض الخارطة وبالأسفل أعرض الموقع الجغرافي (خصوصا عرض الموقع )عندما احرك الماوس يعني مثل
    Arcview
    وبارك الله بك مجددا
  5. #5
    الصورة الرمزية فهد المطلق
    فهد المطلق غير متصل مشرف ملتقى مطوري نظم المعلومات الجغرافية
    تاريخ التسجيل
    Aug 2007
    المشاركات
    132

    رد : إضافة إداة برمجية باستخدام Vba

    هلا اخي حسام

    اولا اعرض سؤالك في موضوع جديد لانه ليس له علاقة بهذا الموضوع

    ثانيا هل تقصد الموقع الجغرافي ظهور الاحداثيات بالاسفل مع تحرك الماوس؟
    [align=center][mshosh2]http://up1.mlfnt.net/images/nyfiy0fvtw9p7m9yp1n1.gif[/mshosh2][/align]

    [align=center]موقع الشخصي
    [http://faculty.ksu.edu.sa/falmutlaq/default.aspx[/align]

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •