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

كيف يمكن تغيير لون ال Shape و ال Lable عند مرور الماوس عليه

مغلق
بدأه alwkeel2002 في 11 نوفمبر 2006 · 14 رد · 3,108 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

كنت اقوم بتصميم عرض بالفجوال بيسيك و هو عبارة عن اننى جعلت صورة هى الخلفية للفورم الخاصة بالعرض و كانت عليها كلما و كنت اتريد بمجرد المرور على الكلمات ان يتم تظليلها و قد حاولت و بحثت عن طريق تجعلنى اضع اداة ال Shape و اجعلها شفافة بحيت تكون الكلمات التى يقف الماوس عليها كأنها محددة او مظللة فلم استطع و قدطرأت لى فكرة و هى ان اقوم بعمل Lable و يكون شفاف و بمجرد مرور الماوس عليه يتغير لونه و تظهر فيه الكلمة التى تحته بمعنى اننى كتبتها فى ال Lable و لكننى كلما حاولت ان اجعل لون ال Labe يتغير لم استطع فهل من اجابة ؟

و ها هو الكود الذى قمت باستعماله

Private Sub Runlbl_MouseMove(Shape As Integer, Shift As Integer, X As Single, Y As Single)

و شكرا

alwkeel2002@yahoo.com

alwkeel2002 كتب:
السلام عليكم

كنت اقوم بتصميم عرض بالفجوال بيسيك و هو عبارة عن اننى جعلت صورة هى الخلفية للفورم الخاصة بالعرض و كانت عليها كلما و كنت اتريد بمجرد المرور على الكلمات ان يتم تظليلها و قد حاولت و بحثت عن طريق تجعلنى اضع اداة ال Shape و اجعلها شفافة بحيت تكون الكلمات التى يقف الماوس عليها كأنها محددة او مظللة فلم استطع و قدطرأت لى فكرة و هى ان اقوم بعمل Lable و يكون شفاف و بمجرد مرور الماوس عليه يتغير لونه و تظهر فيه الكلمة التى تحته بمعنى اننى كتبتها فى ال Lable و لكننى كلما حاولت ان اجعل لون ال Labe يتغير لم استطع فهل من اجابة ؟

و ها هو الكود الذى قمت باستعماله

Private Sub Runlbl_MouseMove(Shape As Integer, Shift As Integer, X As Single, Y As Single)

و شكرا

alwkeel2002@yahoo.com

نسيت أوضح ان اسم ال Lable هو Runlbl حتى لا يعتقد بعض الاعضاء اللذين يريدون المعرفة ثلى ان هذا الاسم هو الكود

و شكرا

#2

سؤالك جميل جداً أخي اذكر بداياتي في الفيجوال حاولت فيها ولكن تعبت منها وتركتها :) ..

على كل اكتب الكود داخل الحدث MouseMove وان شاء الله تحل مشكلتك :) ..

#3

بالنسبة لأداة الـ Shape فهى ملهاش حدث Mouse Move وبالتالى لازم تستعمل الـ APIs دور على وظيفة GetCursorPos على موقع Allapi.net

#4

شكرا لكما لردكما على و قرائتكما سؤالى و الاجابة عليه ، و سأجرب ما قلتماه لى .

و شكرا

alwkeel2002@yahoo.com

#5

لقد بحثت فعلا فى موقع Allapi.net و لكن ما وجدته لم يقم بتلبية رغبتى فأنا أرغب فى ان يتغير لون ال Shape عندما يكون الماوس فوقها و اعتقد ان هذه الخاصية قرأت عنها من قبل و لكن كانت على ال Command Button و اعتقد ان اسمها كان Command_Over وكانت تستعمل عندما يكون الماوس على الزر فيتغير لونه و ليس بالضغط عليه .

و شكرا

alwkeel2002@yahoo.com

alwkeel2002 كتب:
لقد بحثت فعلا فى موقع Allapi.net و لكن ما وجدته لم يقم بتلبية رغبتى فأنا أرغب فى ان يتغير لون ال Shape عندما يكون الماوس فوقها و اعتقد ان هذه الخاصية قرأت عنها من قبل و لكن كانت على ال Command Button و اعتقد ان اسمها كان Command_Over وكانت تستعمل عندما يكون الماوس على الزر فيتغير لونه و ليس بالضغط عليه .

و شكرا

alwkeel2002@yahoo.com

نسيت ان أسأل : هل يمكن فعل ذلك التغيير مع ال Lable بمعنى انه يتغير لونه عندما يمر الماوس فوقه ؟

#6

لقد وجدت كود يقوم فعلا بتغيير ال Lable من هيئة لأخرى عند مرور الماوس عليه اى من Transparent الى

Opaque من الحالة الشفافة الى الحالة المعتمة و قد قمت بالتأكد من ذلك بان كتبت كود يعطينى رساله ان كانت حالة الLabel قد تغيرت ام لا و لكن بقيت مشكلة و هى اننى قمت بكتابة كودلتغيير لون ال Lable ولم يتغير على الرغم من تغير حالته عند مرور الماوس عليه ، بمعنى اننى قمت بعمل Label شفاف و عند مرور الماوس عليه يتغير للحالة المعتمة و يتلون باللون الاحمر و قد تغير فعلا الى الحالة المعتمة و لكنه لم يتلون باللون الاحمر و لا اعرف السبب و ها هو البرنامج فى الملف المرفق .

Label

#7
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
lblLink.ForeColor = vbBlack
End Sub

Private Sub lblLink_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
lblLink.ForeColor = vbBlue
End Sub
#8

أخي الوكيل

نفس المثال الذي قمت بوضعه في ردك الأخير ، قم فقط بتغيير كلمة Opaque إلى رقم 1

مثلا : Label1.BackStyle = 1

وليس : Label1.BackStyle = Opaque

وإن شاء الله يكون هذا هو مطلبك

يا نفسُ إن لم تصلحي

فتشبهي بالصالحينا

[ أبو العتاهية ]

#9

شكرا أخى "شبه جسم " على نصيحتك لى و سأقوم بعمل ما أفدتنى به و جزاك الله خيرا

و شكرا

alwkeel2002@yahoo.com

#10

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

صحيح إن الأداة ما فيها خاصية تمرير الماوس ، لكن ممكن تخدع البرنامج وتستغل خاصية الفورم

يعني بهذي الطريقة :

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If (X > Shape1.Left And X < Shape1.Left + Shape1.Width) And (Y > Shape1.Top And Y < Shape1.Top + Shape1.Height) Then
	Shape1.BackStyle = 1
	Shape1.BackColor = vbRed
Else
	Shape1.BackStyle = 0
End If
End Sub

تم تعديل هذه المشاركة بواسطة شبه جسم في 13 نوفمبر 2006 في 23:15

يا نفسُ إن لم تصلحي

فتشبهي بالصالحينا

[ أبو العتاهية ]

#11
msayed2004 كتب:
بالنسبة لأداة الـ Shape فهى ملهاش حدث Mouse Move وبالتالى لازم تستعمل الـ APIs دور على وظيفة GetCursorPos على موقع Allapi.net

ربما اخالفك من ناحية لازم :lol:

ربما هذا المود يغني عن الـ APi

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
' super_pro @@arabteam2000.com@@
If (X > Shape1.Left And X < Shape1.Left + Shape1.Width) And Y > Shape1.Top And (Y < Shape1.Top + Shape1.Height) Then
 Shape1.BackStyle = 1
 Else
 Shape1.BackStyle = 0
End If

lblLink.ForeColor = vbBlack
End Sub

هذا المطلب ربما فهمت منه شيء

الصراحة اشياء اخرى لم استطع فهمها

اذا امكن توضيحها لعلي استطيع المساعدة

مع تحيات : عبدالرحمن نورالله
بيلار الدولية للتكنولوجيا لتصميم وأستضافة مواقع الأنترنت ، شركة مسجلة في المملكة الاردنية الهاشمية

أستضافة مواقع (Website Hosting) ابتداء من 35دينار اردني (50$) سنوي 962799247524+ أضغط هنا

logo.png

#12

اخي ابو عبدالرحمن يعني سبحان الله ثواني 6 دقائق بظبط بيني و بينك

يعني العقول عند بعضها :lol: (نفس الوقت الذى كنت اصمم به المثال انتا كنت تعمل نفس الشيء :o )

الصراح اول ما ضغط على زر الاضافة و اذا بي اجد نفس الكود الى انا كتبته الخالق الناطق لولا اشي بسيط لشكيت بحالي لوووووووووول ;)

تم تعديل هذه المشاركة بواسطة Super_Pro في 13 نوفمبر 2006 في 23:33

مع تحيات : عبدالرحمن نورالله
بيلار الدولية للتكنولوجيا لتصميم وأستضافة مواقع الأنترنت ، شركة مسجلة في المملكة الاردنية الهاشمية

أستضافة مواقع (Website Hosting) ابتداء من 35دينار اردني (50$) سنوي 962799247524+ أضغط هنا

logo.png

#13

شكرا لكما "شبه جسم" و "Super_pro" على انكما قمتما بمساعدتى و وخصصتما لى جزءا من وقتكما فى الاجابة على سؤالى و اعطائى الحا .

و شكرا

alwkeel2002@yahoo.com

#14

لا شكر على واجب اخي

فعن طريق هذه المشاركات اساعد غيري B) و استرجع و اطور معلوماتي B)

مع تحيات : عبدالرحمن نورالله
بيلار الدولية للتكنولوجيا لتصميم وأستضافة مواقع الأنترنت ، شركة مسجلة في المملكة الاردنية الهاشمية

أستضافة مواقع (Website Hosting) ابتداء من 35دينار اردني (50$) سنوي 962799247524+ أضغط هنا

logo.png

#15

أخوي Super_Pro

إذا تلاقت القلوب .. تلاقت العقول

أخي الوكيل

كلنا نتعلم من بعضنا البعض

بجينا يوم ونحتاج لك يا الغالي

يا نفسُ إن لم تصلحي

فتشبهي بالصالحينا

[ أبو العتاهية ]

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

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

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

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

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

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