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

كيفية حذف وتحريك نقاط مرسومه على GUI بواسطة كلك يمنة في لغة سي شارب

بدأه laithlaithlaith في 25 أبريل 2010 · 5 رد · 802 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

ممكن يا اخوان تساعدوني في مشكلة واجهتي في برمجة سي شارب وهي:

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

http://www.7ammil.com/upfiles/k4i59103.bmp

#2

قم بحفظ Rectangle لكل نقطة في جدول HashTable

ثم عند حدث النقر يمين على الماوس :

            System.Collections.Hashtable t = new System.Collections.Hashtable();
            //الرسم هنا و وملء جدول الهاش تيبل
            if (e.Button == MouseButtons.Right)
            {
                foreach (Rectangle rec in t.Values)
                {
                    if (rec.Contains(e.Location))
                    {
                        //ضع هنا كود إظهار القائمة
                    }
                }
            }
#3

جاري التجربة

ماذا تعني t.value

وكذالك rec

مع الشكر الجزيل

تم تعديل هذه المشاركة بواسطة laithlaithlaith في 28 أبريل 2010 في 03:41

#4

شكرا اخ desert eagle

ممكن طلب

كيف امل hashtable وكيف اضع كود اظاهر القائمه ممكن مثال عن كل واحد لان للمرة الاولى استعمل هذه الاداة في تصميمي

ولك كل التقدير ولاحترام

#5

الكيفية تختلف بإختلاف الكود الذي تستخدمه

عندما ترسم النقاط يجب أن تحفظ إحداثياتها في Rectangle , أي أنه لكل نقطة Rectangle

وجدول الهاش تيبل يحفظ كل نقطة و بجانبها Rectangle , حتى يمكنك من الرجوع إلى إحداثيات النقطة من خلال إسمها

وعند النقر على زر الماوس الأيمن تقوم الدوارة بالبحث في كل عناصر الهاش تيبل , لتختبر مكان النقر هل هو ضمن أحد هذه الـ Rectangles

فإذا كان ضمنا تظهر القائمة Context Menu يمكنك البحث عن طريقه إستخدام القوائم و فهمها بالتفصيل

#6

شكرا اخي الفاضل

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

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

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

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

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