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

سؤال عن صنع ادوات الاكتف اكس

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

السلام عليكم ,,,

اخواني الكرام , انا مشترك جديد معكم في هذا المنتدي واتمني ان استفيد منكم وان افيدكم ان شاء الله :)

سؤالي عن ادوات الاكتف اكس وهو كالاتي :

عرفت كيف اصمم ادات الاكتف اكس وان اضع لها بعض الخصائص مثل خاصية الكابشن او التكسك وبعض الاحداث مثل حدث الكلك او الماوس داون , ولكني مع تطور استخدامي لهذه الاداه احتجت بعد الخصائص ولا اعرف كيف اضيفها واتمني ان تفيدوني في ذلك , ما اريد ان اضيفه من خصائص مختلف عن خاصية التكست او الكابشن , بل اريد ان اضيف خاصية لا تحتوي في قيمتها نص مثل خاصية الباك كلر وكيف نختار اللون في نافذة الخصائص وايضا خاصية مثل خاصية محازات النص وكيف اجعل الخاصية في نافذة الخصائص لا تقبل سوي قيم معينة مثل اليسار واليمين والوسط , وايضا خاصية مثل خاصية الصورة وكيف افتح نافذة استدعاء صورة في نافذة الخصائص لهذه الاداه

ارجو ان لا اكون قد طولت في السؤال فهذا الموضوع شاغلني كثيرا ولم اجد له حلي حتي الان واتمني ان اجده عندكم

انا في انتظار حلولكم

مع تحياتي ,,,

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

تم تعديل هذه المشاركة بواسطة محمد مصطفي غريب في 25 سبتمبر 2008 في 19:31

It does not matter what they know about you, but what you can do, so let your work speak of you

mmghv VB6 Programmer

#2

ضع هذا الكود في UserControl جديدة ستجد بها الخاصية Picture , Font, Enum ,Color

'property variables:
Dim m_Font As Font
Dim m_Picture As Picture
Enum AlignDir
		a_top = 1
		a_left = 2
		a_buttom = 3
		a_right = 4
End Enum
Dim m_align As AlignDir

Public Property Get MyAlign() As AlignDir
	MyAlign = m_align
End Property

Public Property Let MyAlign(ByVal New_Align As AlignDir)
   m_align = New_Align
	PropertyChanged "MyAlign"
End Property

Public Property Get BackColor() As OLE_COLOR
	BackColor = UserControl.BackColor
End Property

Public Property Let BackColor(ByVal New_BackColor As OLE_COLOR)
	UserControl.BackColor() = New_BackColor
	PropertyChanged "BackColor"
End Property

Public Property Get Font() As Font
	Set Font = m_Font
End Property

Public Property Set Font(ByVal New_Font As Font)
	Set m_Font = New_Font
	PropertyChanged "Font"
End Property

Public Property Get Picture() As Picture
	Set Picture = m_Picture
End Property

Public Property Set Picture(ByVal New_Picture As Picture)
	Set m_Picture = New_Picture
	PropertyChanged "Picture"
End Property

Private Sub UserControl_InitProperties()
	Set m_Font = Ambient.Font
	Set m_Picture = LoadPicture("")
End Sub

Private Sub UserControl_ReadProperties(PropBag As PropertyBag)

	UserControl.BackColor = PropBag.ReadProperty("BackColor", &H8000000F)
	Set m_Font = PropBag.ReadProperty("Font", Ambient.Font)
	Set m_Picture = PropBag.ReadProperty("Picture", Nothing)
	 m_align = PropBag.ReadProperty("MyAlign", 1)
End Sub

Private Sub UserControl_WriteProperties(PropBag As PropertyBag)

	Call PropBag.WriteProperty("BackColor", UserControl.BackColor, &H8000000F)
	Call PropBag.WriteProperty("Font", m_Font, Ambient.Font)
	Call PropBag.WriteProperty("Picture", m_Picture, Nothing)
	Call PropBag.WriteProperty("MyAlign", m_align, 1)

End Sub

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#3

شكرا لك اخي الكريم prof فهذا ما كنت احتاج اليه بالضبط

وبهذا سوف اكمل ادواتي بأذن الله ويعود الفضل لله ثم لك

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

تم تعديل هذه المشاركة بواسطة محمد مصطفي غريب في 25 سبتمبر 2008 في 19:39

It does not matter what they know about you, but what you can do, so let your work speak of you

mmghv VB6 Programmer

#4

سؤال اخير اخي الكريم

اني اصنع مجموعة متكاملة من الادوات التي يمكن ان احتاجها في برامجي , فكيف اجمع هذه الادوات في اداة واحدة لكي اوفر الوقت والمساحة عند استدعاء هذه الادوات

و :ty: جزيلا

تم تعديل هذه المشاركة بواسطة محمد مصطفي غريب في 25 سبتمبر 2008 في 23:30

It does not matter what they know about you, but what you can do, so let your work speak of you

mmghv VB6 Programmer

#5
اقتباس
ريد ان اضيف خاصية لا تحتوي في قيمتها نص

- اذا كنت تستخدم الكود , فكما ذكر الأخ prof_1982

- اما اذا كنت تستخدم المعالج :

في نافذة Set Attributes (مكتوب في عنوان النافذة)

حدد نوع البيانات من خلال القائمة Data Type

تجد العديد من الانواع (منطقي , كائن , Byte , تاريخ , ألوان ...)

اقتباس
اني اصنع مجموعة متكاملة من الادوات التي يمكن ان احتاجها في برامجي , فكيف اجمع هذه الادوات في اداة واحدة لكي اوفر الوقت والمساحة عند استدعاء هذه الادوات

من قائمة File اختر New ومن ثم اختر مشروع ActiveX Control

وقم بإضافة ماتشاء من أدوات من خلال الضغط بالزر الأيمن في نافذة المشروع , واختيار New من القائمة المنسدلة , ثم اختيار User Control ومن ثم OK

ولتجميعهم معاً , من قائمة ملف اختر Make project1.ocx

اقتباس
If A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut

Albert Einstein

مدخل إلى برمجة وتصميم الألعاب : كيف أبدأ ؟

#6

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

والاستفسار هو كالاتي :

كيف اغير ايقونة ادوات الاكتف اكس في صندوق الادوات ؟

اعزروني علي الاطالة لكن بأذن الله سيكون هذا اخر استفسار في هذا الموضوع لتكتمل عندي الافادة

وشكرا لتعاونكم

تم تعديل هذه المشاركة بواسطة محمد مصطفي غريب في 26 سبتمبر 2008 في 04:06

It does not matter what they know about you, but what you can do, so let your work speak of you

mmghv VB6 Programmer

#7

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله

محمد مصطفي غريب كتب:
كيف اغير ايقونة ادوات الاكتف اكس في صندوق الادوات ؟

إذهب إلى خصائص الـ User Control ثم إلى الـ Property التي تسمى ToolBoxBitmap

وإختر الصورة التي تناسبك ومن الأفضل أن تكون بمقاس 16×16

اعتذر عن عدم تمكني للمتابعه الدورية في وقتنا الحالي

فليقبل الجميع تقديري واحترامي .. ولكم تحياتي

#8

:D شكرا لكم اخاوني جميعا وبالفعل اكتملت عندي المعلومة كاملة والفضل لله ثم لكم في هذا الموضوع

وبأذن الله سوف اكمل مجموعة الادوات التي اصنعها وسوف اعرضها عليكم ليستفيد منها الجميع

It does not matter what they know about you, but what you can do, so let your work speak of you

mmghv VB6 Programmer

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