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

هل يمكن تغيير لون شريط القوائم؟

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

ألا يمكن تغيير لون شريط القوائم المصنوع بـ menue editor ؟

#2

اختي دينا هذا ما أضنك تبحثين عنه :

http://www.planet-source-code.com/vb/scrip...=50400&lngWId=1

#3

أخي فواز

الرابط لايعمل

#4

لا يمكن تغيير لونه إلا باستخدام احدى ادوات skin مثلا أكتيف سكين

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

#5

السلام عليكم ورحمه الله وبركاته . . . !

يمكن عمل ذلك بدوال الـ API

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

للعلم رابط الاخ فواز الشمري يعمل وفيه مثال جميل لتلوين القوائم

وفقك الله

تم تعديل هذه المشاركة بواسطة Mostafa Ismail في 12 نوفمبر 2005 في 00:39

#6

عزيزي omani يمكن تغير ما تحب في النوافذ بدون إستخدام skin .

نضام التشغيل يتعامل مع النوافذ ومحتوياتها على شكل رسائل عند معالحتها .

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

يقوم نضام التشغيل عند فتح أي نافذة بإعطائها رقم عشوائي ولكل ما تحتوية من أدواد أيضا رقم عشوائي وبذلك لو فرضنا ان رقم النافذة التي بإسم MyProject قد تم إعطائها الرقم 1254 فإن اي أمر يتم معالجة لهذه النافذة سيتم عن طريف دالة تستمع لكل حدث يحدث لهذه النافذة وبذلك فلو حدث حدث وهوا إغلاق النافذة سيتم تمرير هذا الحدث ثم رقم النافذة المعطى من نظام التشغيل إلى المعالج لمحالة تفسير ماهوا نوع هذا الحدث ثم تنفيذ ما يرتبط به من أمر ثم بعد ذلك يتم تنفيذ الإمر بإرسال رسالة الى النافذة ذو الرقم 1254 وبالتالي سيتم إغلاقها مثلاُ.

هذا كان على مستوى النافذة أما أبناء النافذة من الا دواتمثل القوائم والإزرار وصناديق النصوص فهي أيضا تعطى رقم عشوائي لايتكرر من قبل نضام التشغيل (سيمى هذا الرقم المعطى بإسم مقبض النافذة أو الأداه) وطريقة المعالجة تتم بنفس المثال السابق :

مثلا لو كان لدي إثنان من صنادويق النصوص TextBox وأردت أن أقوم بمسح الصندوق الأول من الكتابة سيتم إرسال مقبض النافذة(رقم الناقذة ) Hwnd ألى المعالج ثم تفسير الأمر ثم ارسال رسالة إلى النافذة ذات الرقم المرسل وهي في هذا الحالة متمثلة بصندوق النص TextBox1 وأمر الرسالة هوا مسح ما تحتوية من نصوص .

في حال القوائم نفس الفكرة .

يقوم نضام التشغيل بإعطاء رقم Hwnd لكل قائمة وبالتالي سيقوم المعالج بالتعامل مع النوافذ على أساس المقابض الخاصة بها وهوا يقوم برسم شريق القوائم بالون معين وهوا إفتراضياُ من قبل الشركة بالون المعروف وهنا . يمكننا إعتراض الرسالة التي توجة للمعالج بالرسم ونقوم نحن بتحديد اللون الخاص بتلوين اي شي في النافذة سواء شريط القوائم ام القائمة نفسها . يعني في المثال المرفق يقوم بإعادة رسم القائمة من جديد بهذه الفكرة .

ولكن نحصل على مقبض القائمة هناك دوال تساعدنا في ذلك من إرسال رسائل للمعالج ومعرفة رقم القائمة التي سنقوم بإعادة رسمها ثم الرسالة التي تمثل ان يقوم المعالج مثلا بالرسم او الحذف او .... يعني ماذا تريد مني عندما ارسلت لي مقبض هذه النافذة هذه الدوال قامت الشركة Microsoft بتجميع جزء منها وإرفاقها مع برنامج مرفق في vb6 وتسمي Api .

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

ومن هنا يمكن للهاكرز أن يلتقط اي رسالة ترسل للمعالج ثم يقوم بإادة الأمر المرسل مثلا يمكن الو قمت بإغلاق برنامج Word سيبدل الهاكر امر المعالجة والذي هوا الإغلاق المرفق مع مقبض النافضة بأنه عبارة عن امر طباعة سلسلة نصية ما ولتكن fawaz مثلا ليتفاجئ المستخدم بوجود نص على الصفحة بدل الإغلاق

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

أختي دينا هذا المثال من نفس الرابط . أتمنا ان يعمل لديكي

fawaz.zip

#7

شكر الله لك اخونا الكريم فواز

والله شرح جميل جدا

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#8

نعم يمكن تغير لون القوائم

هذا الكود يقوم بفعل ذلك

ضع هذا فى قسم général

Option Explicit
Private Declare Function CreateBrushIndirect Lib "gdi32" (lpLogBrush As LOGBRUSH) As Long
Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function GetMenuInfo Lib "user32" (ByVal hMenu As Long, lpcmi As tagMENUINFO) As Long
Private Declare Function SetMenuInfo Lib "user32" (ByVal hMenu As Long, lpcmi As tagMENUINFO) As Long
Private Type LOGBRUSH
    lbStyle As Long
    lbColor As Long
    lbHatch As Long
End Type
Private Type tagMENUINFO
    cbSize As Long
    fMask As Long
    dwStyle As Long
    cyMax As Long
    hbrBack As Long
    dwContextHelpID As Long
    dwMenuData As Long
End Type
Private Const BS_SOLID = 0
Private Const MIM_APPLYTOSUBMENUS = &H80000000
Private Const MIM_BACKGROUND = &H2

وهذا فى الفورم

Private Sub Form_Load()
    Dim ret As Long
    Dim hMenu As Long
    Dim hBrush As Long
    Dim lbBrushInfo As LOGBRUSH
    Dim miMenuInfo As tagMENUINFO

    lbBrushInfo.lbStyle = BS_SOLID
    lbBrushInfo.lbColor = vbRed
    lbBrushInfo.lbHatch = 0
    hBrush = CreateBrushIndirect(lbBrushInfo)
    hMenu = GetMenu(Me.hwnd)
    miMenuInfo.cbSize = Len(miMenuInfo)
    ret = GetMenuInfo(hMenu, miMenuInfo)
    miMenuInfo.fMask = MIM_APPLYTOSUBMENUS Or MIM_BACKGROUND
    miMenuInfo.hbrBack = hBrush
    ret = SetMenuInfo(hMenu, miMenuInfo)
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = vbRightButton Then
        Me.PopupMenu mnuMenu
    End If
End Sub

ارجو ان يكون هذا ما تبحث عنه

127gq4.png
#9

جميل جدا اخونا هشام

هل ممكن الحفاظ علي لون ال PopupMenu مع اخفاء شريط القوائم

بمعني ان mnuMenu not visible & not enabled

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#10

up

مرفق مثال لتوضيح سؤالي

heshamPopup.zip

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#11

up

29_09_05_02_32_59_1128029579_4_13_3[_].gif

صور gif شفافة لتجميل واجة البرنامج

الخط العثماني للمهتمين ببرمجة برامج تلاوة القرآن

كيف يمكن عمل سكرول بالماوس, scroling by mouse wheel

كبفية استعراض ملف PDF في تكست

06_02_06_08_01_06_1139241666down-logo_1.gif

هل نكذب علي الله ام نكذب علي انفسنا

البـر لا يبلي ، و الذنب لا ينسـي ، و الديـان لا يمـوت ، افعـل مـا شئت كما تـديـن تـدان

ليس كل من تعمم مفتيا ، بل ان الدين الاسلامي ليس قيه كهانه و بالتالي ليس فيه ما يعرف ب رجال الدين – احمد رجب

                                  مع خالص تحيـــــــــــــــــــــــــــــــــاتي

                                                   GAF58 

#12

ألف شكر للجميع على المشاركات القيمة

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

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