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

كيف اقسم اداة Picturebox الي اقسام متعددة للرسم في كل قسم

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

الاخوة الاعزاء لدي طلب وهو

تقسيم اداة الرسم في الفيجول الي اقسام متعددة بحيث اسطيع ان ارسم شي محدد في كل قسم

بمعني تقسيم اداة PictureBox

مثلا تقيسيمها الي خمسة اقسام

هل يمكن عمل ذلك

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

#2

السلام عليكم...

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

1. أن تستعمل بعض العمليات الحسابية لتحسب مواقع نقاط الرسم حسب الجزء (أو المنطقة) التي تريد أن يظهر فيها الرسم.

2. أن تستعمل فكرة مناطق القص (أو الاقتصاص Clipping Regions) بحيث تقوم بتعريف منطقة محددة لتستقبل أوامر الرسم، و هي طريقة تضمن عدم تجاوز الرسم حدود تلك المنطقة حتى و إن كانت الإحداثيات تشير إلى نقاط خارج المنطقة.

أنا في المثال المرفق اخترت الطريقة الثانية لأنها أوضح و أسهل و مضمونة كما قلت.

البرنامج يقوم بتقسيم الـ PictureBox إلى 4 مناطق (Regions). و يقوم مبدئياً باختيار المنطقة الأولى (العلوية اليسرى) لتكون هي منطقة الرسم الفعالة أو الحالية (Current region).

يمكنك تحديد المنطقة التي تريد توجيه الرسم إليها باستعمال الإجراء SetCurrentRegion مع تحديد المنطقة التي تريدها.

لمسح المنطقة الحالية استدع الإجراء ClearRegion (لا تستعمل المنهج Cls لأنه سيمسح كافة مساحة الـ PictureBox).

عند استعمال مناهج الرسم (مثل Line و Circle و غيرها) يجب دائماً استعمال الدالتين LogicalX و LogicalY لتحويل الإحداثيات من قيم مطلقة إلى قيم بإحداثيات المنطقة الفعالة.

يمكن تطوير البرنامج بإنشاء إجراءات شبيهة بالمناهج Line و Circle بحيث يمكن استعمالها دون الحاجة إلى الاهتمام بعملية نقل الإحداثيات.

ViewPorts.rar

نرجو الاستفادة و السلام.

وَ قُلِ اعْمَلُوا فَسَيَرَى اللهُ عَمَلَكُمْ وَ رَسُولُهُ وَ الْمُؤْمِنُونَ

صدق الله العظيم

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

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

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

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

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