منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

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


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

وكما وعدتكم سابقا اخواني الاعزاء باني سوف اقوم بوضع سلسلة دروس حول صناعة الادوات توضح ماهية الادوات و كيف يتم التعامل معها.

و في هذه السلسله سأهتم بالتركيز على ما يلي:

1- ماهي وظيفة الادوات؟
2- لماذا اقوم بابعمل ادواتي الخاصه؟
3- اداتي الاولى ((كيف ابدأ؟)).
4- الامثله.
5- اداة منتدى فيجوال بيسك ((مشروع)) ' بعد اذن الاداره.


و هذا هو مضمون سلسة الدروس ، اتمنى ان يوفقني الله لما فيه الخير ، و يتم نعمته علينا في هذا المنتدى الاكثر من رائع.

وفي النهاية اخواني الاعزاء ، اتمنى منكم المشاركه البناءه و ابداء الملاحظات و تعديل الخطأ حيثما وجد.

اخوكم


الدرس الاول: الادوات في فيجوال بيسك
بسم الله الرحمن الرحيم
يوفر برنامج فيجوال بيسك ادوات افتراضية متوفره على الشاشه الرئيسية للبرنامج ، و التي تستطيع استخدامها اثناء القيام بعملية البرنامج.
انت تستطيع تصميم برنامج كامل دون الاعتماد على هذه الادوات ((اي بالكود فقط)) , لكن هذه الادوات عرفت عندما بدئنا بالبرمجة المرئية visual التي و فرتها لنا ، عند الانتقال من بيسك و ماتبعه من اصدارات حتى ظهور ما يعرف بالبرمجة المرئية.
استنتاج: اذن الادوات ترتبط بالبرمجة المرئية .
ماذا استفيد مما سبق؟
في الماضي عندما كنت تريد كتابة نص او وضع صندوق نص فان هذا كان يكلفك الكثير من الوقت و الضبط حتى تحصل على ما تريد، اما الان فانت تنقر نقرا مزدوجا فقط على شكل اداة صندوق النص و بكل سهوله.
ان المنطق يقول اني عندما استطيع اختصار الوقت و الجهد و الحصول على فاعلية اكبر في العمل علي اتباع الوسائل الاكثر سلاسه لتنفيذ اعمالي ، من هنا بدأت فكرة الادوات المدرجة في فيجوال بيسك، سرعة و انجاز في العمل.
لعدم الاطالة

الملخص:
س: ماهي الادوات؟
هي عناصر مرئية مدرجة في الفيجوال بيسك لاكواد تحوي اكواد جاهزة يمكن التعامل معها و لا يمكن تعديلها , لمساعدة المستخدم في اعماله , مثل : صندوق نص ، عنوان ، صوره ، الخ.....

كيف استطيع ادراج المزيد من الادوات لإستخدامها في برنامج؟؟
تستطيع ذلك بسهولة من خلال اتباع الطريقة التالية:-
‘ انت الان تعمل على مشروع جديد
1- اختيار قائمة Project من شريط القائم
2- انتقاء الخيار Components
الان ستظهر لك نافذه تحتوي اسماء الادوات التي يحتويها مجلد النظام
‘ اختر اسم الاداة التي تريد استخدامها ؛ و ستظهر مع مجموعة الادوات على الشاشة الرئيسية


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


الدرس الثاني: الخطوة الاولى

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

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

و الان وصلنا الى اكثر نقطه حاسمه في الموضوع "اداتي الاولى"
******************************************************
قبل البدء في "تصنيع" ادواتي الخاصه , علي معرفة بعض الخصائص المهمه التي تهمني و تساعدني جدا في برمجة ادواتي.

الحدث Initialize
الحدث Resize
الحدث WriteProperties
الحدث ReadProperties

وهذه ليست الاحداث المهمه فقط فهناك غيرها الكثير و لكن هي ما ساقوم بشرحه لاولويتها.

الحدث : Initialize
يتم تنفيذ هذا الكود عند وضع الاداه على الفورم لاول مره و يمكن لنا مقارنته بالحدث load ليتم تسهيل الامر.

الحدث : Resize
حيث يتم التعامل مع الكود اثناء تغير حجم الاداة .

الحدث: WriteProperties و ReadProperties
و هم الاهم عند وضع خصائص للاداة التي سنقوم بانشائها.

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

اداتي الاولى:

برنامج سهل و جميعنا نعرفه ((اله حاسبه ب صندوقين نص))

سوف نقوم بتحويل هذا البرنامج البسيط الى اده و سوف نقوم باستخدام الوظائف "Function" في ذلك

اداتنا لاولى لن تحتوي اي اداه من الادوات الافتراضية طبعا.


سنحتاج في البداية الى معرفة التركيب البنائي للفنكشن:

Public Function Fname(XXX As String)
'code

End Function
Fname: الاسم الذي سنقوم بكتابته عند الاستدعاء
XXX: المتغيرات التي سنقوم بادخالها للفنكشن و يمكن ادخال اكثر من متغير بوضع فاصله بين كل واحد و الاخر

الان سنبدأ بكتابة الكود

Public Function Plus(num1 As String, num2 As String)
Plus = Val(num1) + Val(num2)

End Function


Public Function Minus(num As String, num2 As String)
Minus = Val(num1) - Val(num2)

End Function


Public Function By(num As String, num2 As String)
By = Val(num1) * Val(num2)

End Function


Public Function de(num As String, num2 As String)
de = Val(num1) / Val(num2)
End Function

Private Sub UserControl_Resize()
UserControl.Height = 500
UserControl.Width = 500
End Sub

اداتنا الولى الان جاهزة للعمل
قمت بارفاق مثال لزيادة الفائدة ، ويحتوي على طريقة تشغيل الاداة في الفورم

الدرس القادم سنقوم بعمل اداه بسيطة لعرض الصور نقوم بتطويرها معا.

وفي النهاية ارجو ان يكون الشرح وافي.
السلام عليكم

حياك الله اخي الكريم وشكرا على مجهودك

يعطيك العافية
[COLOR="#FF0000"]بارك الله فيك
يعطيك العافية
[/COLOR]
بارك الله فيك وشكرا
لو سمحت يا استاذ لو ممكن تعطيني طريقة اتواصل معك احتاج مساعدتك في هذا الموضوع بشكل مهم جدا
(28-05-24, 03:06 AM)jihadalfaytouri كتب : [ -> ]لو سمحت يا استاذ لو ممكن تعطيني طريقة اتواصل معك احتاج مساعدتك في هذا الموضوع بشكل مهم جدا

تفضل كيف بقدر اساعد