المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : سلسلة رقم 2 شرح تفصيلى لبرنامج صناعة الإضافات AMS Plugin Maker


عبود عبود
18-09-2018, 11:26 PM
https://i.imgur.com/ybV5rpe.gif

إستكمالا لما بدأناه سابقا فى هذا الموضوع
سلسلة رقم 1 شرح تفصيلى لبرنامج صناعة الإضافات AMS Plugin Maker (http://www.abc4web.net/vb/showthread.php?t=36914)

كنا قد توقفنا عند :

هذه الوظائف هم 19 وظيفة هم كالتالى :

--
function OnCreateObject(ObjectPtr,InstanceHandle)
function OnDeleteObject(ObjectPtr)
function GetWindowHandle(ObjectPtr)
function DrawDesign(ObjectPtr,HDC,WndParent,X,Y,Width,Heigh t,Visible,Enabled)
function DrawRuntime(ObjectPtr,HDC,WndParent,X,Y,Width,Heig ht,Visible,Enabled)
function GetCustomProperties(ObjectPtr)
function SetCustomProperties(ObjectPtr,Properties)
function ShowProperties(ObjectPtr,PluginFolder)
function HideInternalObject(ObjectPtr)
function DoSetFocus(ObjectPtr)
function ShowWindow(ObjectPtr,Visible)
function OnMouseOver(ObjectPtr,WndParent,MouseX,MouseY,X,Y, Width,Height)
function OnMouseLeave(ObjectPtr,WndParent,MouseX,MouseY,X,Y ,Width,Height)
function OnLBtnDown(ObjectPtr,WndParent,MouseX,MouseY,X,Y,W idth,Height)
function OnLBtnUp(ObjectPtr,WndParent,MouseX,MouseY,X,Y,Wid th,Height)
function OnLBtnDoubleClick(ObjectPtr,WndParent,MouseX,Mouse Y,X,Y,Width,Height)
function OnRBtnDown(ObjectPtr,WndParent,MouseX,MouseY,X,Y,W idth,Height)
function OnRBtnUp(ObjectPtr,WndParent,MouseX,MouseY,X,Y,Wid th,Height)
function OnRBtnDoubleClick(ObjectPtr,WndParent,MouseX,Mouse Y,X,Y,Width,Height)


https://i.imgur.com/RQXcMhj.gif

function OnCreateObject(ObjectPtr,InstanceHandle) الوظيفة الأولى: وظيفة حدث إنشاء البليجين وهى
تحتوى هذه الوظيفة على عدد 2 بارميتر وهم :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
InstanceHandle حيث يعبر عن إسم المكتبة المستخدمة فى حالة تشابة إستخدام المكتبات الوظيفية طبعا الإسم هو متغير يعبر عن رقم مقبض المكتبة المستدعاه .
وعلى العموم تستخدم هذه الوظيفة بصفة عامة فى إستدعاء المكتبات البرمجية التى نستخدمها فى إنشاء البليجين أو برمجته .

https://i.imgur.com/RQXcMhj.gif

function OnDeleteObject(ObjectPtr) الوظيفة الثانية: وظيفة حدث حذف البليجين وهى
تحتوى هذه الوظيفة على عدد 1 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
وعلى العموم تستخدم هذه الوظيفة بصفة عامة فى إلغاء إستدعاء المكتبات البرمجية التى نستخدمها فى إنشاء البليجين أو برمجته حتى نخفف العبئ على الذاكرة "الميمورى" .

https://i.imgur.com/RQXcMhj.gif

function GetWindowHandle(ObjectPtr) الوظيفة الثالثة: وظيفة الحصول على رقم مقبض البليجين وهى
تحتوى هذه الوظيفة على عدد 1 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
وعلى العموم يمكن إستخدام هذه الوظيفة للحصول على رقم مقبض بليجين الأوبجيكت الناتج وإرجاع الناتج فى صورة ريتيرن لإسم متغير يمكن فيما بعد إستدعاء أو إستخدام هذا المتغير إذا تطلب الأمر ذلك .

https://i.imgur.com/RQXcMhj.gif

الوظيفة الرابعة: وظيفة رسم وتصميم البليجين فى وقت التصميم " يعنى أثناء البرمجة وكتابة الأكواد فى مشروع الأتوبلاى ميديا ستوديو" وهى :
function DrawDesign(ObjectPtr,HDC,WndParent,X,Y,Width,Heigh t,Visible,Enabled)
تحتوى هذه الوظيفة على عدد 9 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
HDC حيث يعبر مقبض سياق جهاز الذاكرة الحالية لبليجين الأوبجيكت .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
X حيث يعبر عن بداية الموضع الأفقى لبليجين الأوبجيكت الناتج عند إضافة وإستخدام هذا البليجين .
Y حيث يعبر عن بداية الموضع الرأسى لبليجين الأوبجيكت الناتج عند إضافة وإستخدام هذا البليجين .
Width حيث يعبر عن عرض بليجين الأوبجيكت الناتج عند إضافة وإستخدام هذا البليجين .
Height حيث يعبر عن إرتفاع بليجين الأوبجيكت الناتج عند إضافة وإستخدام هذا البليجين .
Visible حيث يعبر عن إذا كان بليجين الأوبجيكت الناتج عند إضافة وإستخدام هذا البليجين مخفى أو ظاهرا .
Enabled حيث يعبر عن إذا كان بليجين الأوبجيكت الناتج عند إضافة وإستخدام هذا البليجين مفعل أو غير مفعل .
وفى الصورة التالية توضيح لكل من X و Y و Width و Height و Visible و Enabled طبعا هذا يوضح فيما بعد إنتاج البليجين حتى نفهم هذه المصطلحات من خصائص البليجين Attributes :

https://i.imgur.com/Xfh2GB4.png


https://i.imgur.com/RQXcMhj.gif

الوظيفة الخامسة: وظيفة رسم وتصميم البليجين فى وقت التشغيل والمعاينة " يعنى أثناء المعاينة لمشروع الأتوبلاى ميديا ستوديو أو تشغيل المشروع النهائى" وهى :
function DrawRuntime(ObjectPtr,HDC,WndParent,X,Y,Width,Heig ht,Visible,Enabled)
نفس ما ذكرته سابقا عن الوظيفة السابقة ولكن مع الإختلاف الوظيفى بينهما وقت التشغيل والمعاينة للمشروع .


https://i.imgur.com/RQXcMhj.gif


الوظيفة السادسة: وظيفة إيجاد خصائص البليجين "الخصائص التى نبرمجها للبليجين مثلا اللون وإعدادات البليجين من خط مستخدم مثلا أو تنسيق معين نريد مستخدم البليجين أن يستفيد منه وغيره وفيما يلى بالشرح سوف نتعرف سويا بالتفصيل كيف نفعل هذا" وطبعا إسم الوظيفة هى :
function GetCustomProperties(ObjectPtr)
تحتوى هذه الوظيفة على عدد 1 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
بصفة عامة تستخدم هذة الوظيفة فى حصول البليجين وتخزينة لقيم يقوم بإعدادها المبرمج للبليجين كمثلا قيمة خلفية لونية لنص أو إمكانية تغيير شيئ معين فى البليجين أثناء وقت التصميم DrawDesign
إنظر إلى الصورة التالية :

https://i.imgur.com/jFngsl2.png



https://i.imgur.com/RQXcMhj.gif

الوظيفة السابعة: وظيفة وضع وتغيير خصائص البليجين "الخصائص التى نبرمجها للبليجين مثلا اللون وإعدادات البليجين من خط مستخدم مثلا أو تنسيق معين نريد مستخدم البليجين أن يستفيد منه وغيره وفيما يلى بالشرح سوف نتعرف سويا بالتفصيل كيف نفعل هذا" وطبعا إسم الوظيفة هى :
function SetCustomProperties(ObjectPtr,Properties)
تحتوى هذه الوظيفة على عدد 2 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
Properties حيث يعبر عن قيمة نصية تسترجع من الوظيفة السابقة GetCustomProperties أى أننا نستخدم فيها الريتيرن الذى يتم إرجاعة فى وظيفة GetCustomProperties
بصفة عامة تستخدم هذة الوظيفة فى إيداع وتغيير البليجين لقيم يقوم بإعدادها المبرمج للبليجين كمثلا قيمة خلفية لونية لنص أو إمكانية تغيير شيئ معين فى البليجين أثناء وقت التصميم DrawDesign
فكلا الوظيفتين Get و Set مرتبطين ببعضهما البعض لآداء مهمة تغيير معين فى وقت التصميم أى ما قبل معاينة المشروع يعنى فى مرحلة وضع وبرمجة الأكواد فى برنامج الأتوبلاى ميديا ستوديو .

إنظر إلى الفيديو لتتضح الأمور أكثر بالنسبة للوظيفتين :


https://youtu.be/IanFi5aDP98



https://i.imgur.com/RQXcMhj.gif


الوظيفة الثامنة: وظيفة إظهار خصائص البليجين عند ضغط المستخدم للبليجين على زر خصائص Properties وهذه الوظيفة هى :
function ShowProperties(ObjectPtr,PluginFolder)
تحتوى هذه الوظيفة على عدد 2 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
PluginFolder حيث يعبر عن مسار تنصيب مجلد الإضافة فى مسار إضافات الأوبجيكت لبرنامج الأتوبلاى الذى تم تنصيبة على الجهاز للمبرمج .
إنظر إلى الصورة التالية حتى تعرف عن أى زر نتحدث :


https://i.imgur.com/Q01k2oI.png


https://i.imgur.com/RQXcMhj.gif

الوظيفة التاسعة: وظيفة إخفاء مقبض البليجين أو إخفاء البليجين وعدم ظهورة فى حالة أننا إستخدمنا فى مشروعنا أكثر من صفحة يتم الإنتقال بينهم فلابد فى هذه الحالة من إستخدام هذه الوظيفة إذا كان البليجين الذى نقوم ببرمجته من النوع "windowed object" هذه الوظيفة هى :
function HideInternalObject(ObjectPtr)
تحتوى هذه الوظيفة على عدد 1 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .


https://i.imgur.com/RQXcMhj.gif


الوظيفة العاشرة: وظيفة تمكين وضع تركيز الماوس كعنصر إدخال مثل عنصر الإينبوت أو أى عنصر من عناصر الإدخال إذا كان البليجين الذى نقوم ببرمجته من النوع "windowed object" هذه الوظيفة هى :
function DoSetFocus(ObjectPtr)
تحتوى هذه الوظيفة على عدد 1 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .


https://i.imgur.com/RQXcMhj.gif


الوظيفة الحادية عشر: وظيفة تمكين إظهار وإخفاء البليجين إذا كان البليجين الذى نقوم ببرمجته من النوع "windowed object" هذه الوظيفة هى :
function ShowWindow(ObjectPtr,Visible)
تحتوى هذه الوظيفة على عدد 2 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
Visible حيث يعبر عن قيمة بولينية إما true أو false للإظهار أو الإخفاء .


https://i.imgur.com/RQXcMhj.gif


الوظيفة الثانية عشر: وظيفة حدث مرور الماوس على أو فوق عنصر البليجين الذى نقوم ببرمجته هذه الوظيفة هى :
function OnMouseOver(ObjectPtr,WndParent,MouseX,MouseY,X,Y, Width,Height)
تحتوى هذه الوظيفة على عدد 8 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
MouseX حيث يعبر عن الموضع الأفقى لمؤشر الماوس .
MouseY حيث يعبر عن الموضع الرأسى لمؤشر الماوس .
X حيث هو الموضع الأفقى أو بداية نقطة رسم البليجين الأفقية .
Y حيث هو الموضع الرأسى أو بداية نقطة رسم البليجين الرأسية .
Width حيث هو عرض البليجين ككل .
Height حيث هو إرتفاع البليجين ككل .
وبصفة عامة نستخدم هذه الوظيفة فى حالة أننا نريد تنفيذ أكواد معينة فى حدث مرور الماوس فوق البليجين .


https://i.imgur.com/RQXcMhj.gif


الوظيفة الثالثة عشر: وظيفة حدث مغادرة مرور الماوس من على عنصر البليجين الذى نقوم ببرمجته هذه الوظيفة هى :
function OnMouseLeave(ObjectPtr,WndParent,MouseX,MouseY,X,Y ,Width,Height)
تحتوى هذه الوظيفة على عدد 8 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
MouseX حيث يعبر عن الموضع الأفقى لمؤشر الماوس .
MouseY حيث يعبر عن الموضع الرأسى لمؤشر الماوس .
X حيث هو الموضع الأفقى أو بداية نقطة رسم البليجين الأفقية .
Y حيث هو الموضع الرأسى أو بداية نقطة رسم البليجين الرأسية .
Width حيث هو عرض البليجين ككل .
Height حيث هو إرتفاع البليجين ككل .
وبصفة عامة نستخدم هذه الوظيفة فى حالة أننا نريد تنفيذ أكواد معينة فى حدث مغادرة مرور الماوس من على البليجين .


https://i.imgur.com/RQXcMhj.gif


الوظيفة الرابعة عشر: وظيفة حدث الضغط بيسار الماوس عندما تكون حالة الضغط هى لأسفل على عنصر البليجين الذى نقوم ببرمجته هذه الوظيفة هى :
function OnLBtnDown(ObjectPtr,WndParent,MouseX,MouseY,X,Y,W idth,Height)
تحتوى هذه الوظيفة على عدد 8 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
MouseX حيث يعبر عن الموضع الأفقى لمؤشر الماوس .
MouseY حيث يعبر عن الموضع الرأسى لمؤشر الماوس .
X حيث هو الموضع الأفقى أو بداية نقطة رسم البليجين الأفقية .
Y حيث هو الموضع الرأسى أو بداية نقطة رسم البليجين الرأسية .
Width حيث هو عرض البليجين ككل .
Height حيث هو إرتفاع البليجين ككل .
وبصفة عامة نستخدم هذه الوظيفة فى حالة أننا نريد تنفيذ أكواد معينة فى حدث الضغط بيسار الماوس عندما تكون حالة الضغط هى لأسفل على عنصر البليجين .


https://i.imgur.com/RQXcMhj.gif


الوظيفة الخامسة عشر: وظيفة حدث الضغط بيسار الماوس عندما تكون حالة الضغط هى لأعلى على عنصر البليجين الذى نقوم ببرمجته أى بعد الضغط بيسار الماوس "حالة رفع الإصبع عن الضغط" هذه الوظيفة هى :
function OnLBtnUp(ObjectPtr,WndParent,MouseX,MouseY,X,Y,Wid th,Height)
تحتوى هذه الوظيفة على عدد 8 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
MouseX حيث يعبر عن الموضع الأفقى لمؤشر الماوس .
MouseY حيث يعبر عن الموضع الرأسى لمؤشر الماوس .
X حيث هو الموضع الأفقى أو بداية نقطة رسم البليجين الأفقية .
Y حيث هو الموضع الرأسى أو بداية نقطة رسم البليجين الرأسية .
Width حيث هو عرض البليجين ككل .
Height حيث هو إرتفاع البليجين ككل .
وبصفة عامة نستخدم هذه الوظيفة فى حالة أننا نريد تنفيذ أكواد معينة فى حدث الضغط بيسار الماوس عندما تكون حالة الضغط هى لأعلى على عنصر البليجين أى بعد الضغط بيسار الماوس "حالة رفع الإصبع عن الضغط" .


https://i.imgur.com/RQXcMhj.gif


الوظيفة السادسة عشر: وظيفة حدث الضغط بيسار الماوس مرتان على التوالى هذه الوظيفة هى :
function OnLBtnDoubleClick(ObjectPtr,WndParent,MouseX,Mouse Y,X,Y,Width,Height)
تحتوى هذه الوظيفة على عدد 8 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
MouseX حيث يعبر عن الموضع الأفقى لمؤشر الماوس .
MouseY حيث يعبر عن الموضع الرأسى لمؤشر الماوس .
X حيث هو الموضع الأفقى أو بداية نقطة رسم البليجين الأفقية .
Y حيث هو الموضع الرأسى أو بداية نقطة رسم البليجين الرأسية .
Width حيث هو عرض البليجين ككل .
Height حيث هو إرتفاع البليجين ككل .
وبصفة عامة نستخدم هذه الوظيفة فى حالة أننا نريد تنفيذ أكواد معينة فى حدث الضغط بيسار الماوس مرتان على التوالى أى بالتتابع .


https://i.imgur.com/RQXcMhj.gif


الوظيفة السابعة عشر: وظيفة حدث الضغط بيمين الماوس عندما تكون حالة الضغط هى لأسفل على الزر الأيمن على عنصر البليجين الذى نقوم ببرمجته هذه الوظيفة هى :
function OnRBtnDown(ObjectPtr,WndParent,MouseX,MouseY,X,Y,W idth,Height)
تحتوى هذه الوظيفة على عدد 8 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
MouseX حيث يعبر عن الموضع الأفقى لمؤشر الماوس .
MouseY حيث يعبر عن الموضع الرأسى لمؤشر الماوس .
X حيث هو الموضع الأفقى أو بداية نقطة رسم البليجين الأفقية .
Y حيث هو الموضع الرأسى أو بداية نقطة رسم البليجين الرأسية .
Width حيث هو عرض البليجين ككل .
Height حيث هو إرتفاع البليجين ككل .
وبصفة عامة نستخدم هذه الوظيفة فى حالة أننا نريد تنفيذ أكواد معينة فى حدث االضغط بيمين الماوس عندما تكون حالة الضغط هى لأسفل على الزر الأيمن على عنصر البليجين الذى نقوم ببرمجته .


https://i.imgur.com/RQXcMhj.gif


الوظيفة الثامنة عشر: وظيفة حدث الضغط بيمين الماوس عندما تكون حالة الضغط هى لأعلى للزر الأيمن "حالة رفع الإصبع بعد الضغط على زر الماوس الأيمن" على عنصر البليجين الذى نقوم ببرمجته هذه الوظيفة هى :
function OnRBtnUp(ObjectPtr,WndParent,MouseX,MouseY,X,Y,Wid th,Height)
تحتوى هذه الوظيفة على عدد 8 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
MouseX حيث يعبر عن الموضع الأفقى لمؤشر الماوس .
MouseY حيث يعبر عن الموضع الرأسى لمؤشر الماوس .
X حيث هو الموضع الأفقى أو بداية نقطة رسم البليجين الأفقية .
Y حيث هو الموضع الرأسى أو بداية نقطة رسم البليجين الرأسية .
Width حيث هو عرض البليجين ككل .
Height حيث هو إرتفاع البليجين ككل .
وبصفة عامة نستخدم هذه الوظيفة فى حالة أننا نريد تنفيذ أكواد معينة فى حدث االضغط بيمين الماوس عندما تكون حالة الضغط هى لأعلى للزر الأيمن "حالة رفع الإصبع بعد الضغط على زر الماوس الأيمن" على عنصر البليجين الذى نقوم ببرمجته .


https://i.imgur.com/RQXcMhj.gif


الوظيفة التاسعة عشر: وظيفة حدث الضغط بيمين الماوس مرتان على التوالى أو بالتتابع على عنصر البليجين الذى نقوم ببرمجته هذه الوظيفة هى :
function OnRBtnDoubleClick(ObjectPtr,WndParent,MouseX,Mouse Y,X,Y,Width,Height)
تحتوى هذه الوظيفة على عدد 8 باراميتر وهو :
ObjectPtr حيث يعبر عن إسم البليجين وطبعا الإسم هو متغير يعبر عن رقم مقبض بليجين الأوبجيكت الناتج .
WndParent حيث يعبر عن مقبض الإيطار الأصل لبليجين الأوبجيكت.
MouseX حيث يعبر عن الموضع الأفقى لمؤشر الماوس .
MouseY حيث يعبر عن الموضع الرأسى لمؤشر الماوس .
X حيث هو الموضع الأفقى أو بداية نقطة رسم البليجين الأفقية .
Y حيث هو الموضع الرأسى أو بداية نقطة رسم البليجين الرأسية .
Width حيث هو عرض البليجين ككل .
Height حيث هو إرتفاع البليجين ككل .
وبصفة عامة نستخدم هذه الوظيفة فى حالة أننا نريد تنفيذ أكواد معينة فى حدث االضغط بيمين الماوس مرتان على التوالى أو بالتتابع على عنصر الأوبجيكت الذى نقوم ببرمجته .



https://i.imgur.com/RQXcMhj.gif

نستكمل فيما هو قادم " إن شاء الله " و القادم أجمـــــل

ياسرهتهت
20-09-2018, 10:18 PM
بسم الله الرحمن الرحيم
بارك الله فيك استاذ عبود
كالعادة شرح في غاية الروعه والدقة
ومجهود كبير في اعداد الشرح
جعله الله في ميزان حسناتك
موفق بإذن الله ... لك مني أجمل تحية .
:abc_152::abc_152::abc_152:

مصطفى مراد
17-11-2018, 08:28 PM
جزاك الله كل خير و ثواب

يا ريت لو يتم تحويل الموضوع الأول و الثاني في السلسلة الى كتاب الكتروني بنفس هذا التنسيق لأنه مفيد جدا و يمكن حفظه كمرجع للاستفادة من هكذا نوع من البرامج :abc_152:

عبود عبود
02-12-2018, 03:13 PM
جزاك الله كل خير و ثواب

يا ريت لو يتم تحويل الموضوع الأول و الثاني في السلسلة الى كتاب الكتروني بنفس هذا التنسيق لأنه مفيد جدا و يمكن حفظه كمرجع للاستفادة من هكذا نوع من البرامج :abc_152:

شكرا لمرورك أخى الكريم

كانت أريد شرح البرنامج وإمكانياتة بالكامل ولكنى لم أجد أحد يهتم به أو ببرنامج الأتوبلاى كما كان سابقا
ولذلك توقفت عن إستكمال الشرح للأسف الشديد :abc_070: :abc_145:

مصطفى مراد
02-12-2018, 03:30 PM
شكرا لمرورك أخى الكريم

كانت أريد شرح البرنامج وإمكانياتة بالكامل ولكنى لم أجد أحد يهتم به أو ببرنامج الأتوبلاى كما كان سابقا
ولذلك توقفت عن إستكمال الشرح للأسف الشديد :abc_070: :abc_145:

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

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

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

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

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

و من ناحية الاستمرار في الشرح لهذا البرنامج الرائع أنا أرى طالما فيه نشر للعلم و الفائدة فاستمر و الأجر عند الله و أنا واحد الناس أمشي على طريق الاحتراف بما قدمته أنت و الأسماء الكبيرة الأخرى هنا جزاكم الله جميعا كل خير و بارك فيكم :abc_152: