ashalshaikh
زيزوومى فضى
غير متصل
من فضلك قم بتحديث الصفحة لمشاهدة المحتوى المخفي
تابع
الـ UDF وصنع Functions
ضبط المخرجات
إعداد :: Ashalshaikh
سنبدأ بها واحد واحد وناخذ التطبيقات للتدريج !!
أولا :: الـ Returns
وهو أهم واحد .
وهي القيم التي ترجع في المتغير أو مكان الدالة !! << وتحتمل جميع أنواع البيانات
أمثلة توضح على دوال أساسية !!
نستخدم الكلمة المفتاحية Return لتعيين الخارج
الآن لنصنع دالة تعمل Return فقط ,, بدون أي شيء !!
ويحتمل أيضا إرجاع المصفوفات 
ملاحظة مهمة :: ينتهي عمل الدالة عن كلمة Return بمعنى إذا وصل إليها ,, ينفذها ثم يخرج من الدالة !!
لاحظ :ـ لا تظهر الرسالة بعد الـ Return
k:
مثال رئيسي
دالة بسيطة ليس لها فائدة :d:
هناك دالة أساسية تدعى StringLen لـ عد خانات نص !!
سنعمل واحدة مثلها
ولكن بدون ما نستخدمها 
مثال بالدالة الأساسية :ـ
مثال الدالة اللي أقصدها فوق :d:
الفكرة :ـ
أن الدالة الأساسية StringSplit تقوم بتقسيم النص إلى مقاطع في مصفوفة حسب خانة تضعها !!
وأنا هنا وضعت التقسيم حسب "" أي ضع كل خانة في قيمة
وكعادة المصفوفات يكون الصف 0 هو عدد الصفوف !! << الذي يساوي عدد الخانات !!
لذا سنرجع الصف رقم 0 :d:
الكود :ـ
بإنتظار تطبيقاتكم 
الـ UDF وصنع Functions
ضبط المخرجات
إعداد :: Ashalshaikh
سنبدأ بها واحد واحد وناخذ التطبيقات للتدريج !!
أولا :: الـ Returns
وهو أهم واحد .
وهي القيم التي ترجع في المتغير أو مكان الدالة !! << وتحتمل جميع أنواع البيانات
أمثلة توضح على دوال أساسية !!
كود:
[COLOR=#009933];متغير[/COLOR]
[COLOR=#aa0000]$DD[/COLOR] [COLOR=#ff0000]=[/COLOR] [COLOR=#000090]FileGetSize[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ff33ff]@ScriptFullPath[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#aa0000]$DD[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#009933];مكان الكتابة[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#000090]FileGetSize[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ff33ff]@ScriptFullPath[/COLOR][COLOR=#ff0000])[/COLOR][COLOR=#ff0000])[/COLOR]
الآن لنصنع دالة تعمل Return فقط ,, بدون أي شيء !!
كود:
[COLOR=#009933];متغير[/COLOR]
[COLOR=#aa0000]$DD[/COLOR] [COLOR=#ff0000]=[/COLOR] m[COLOR=#ff0000]([/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#aa0000]$DD[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#009933];مكان الكتابة[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR]m[COLOR=#ff0000]([/COLOR][COLOR=#ff0000])[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]Func[/COLOR] m[COLOR=#ff0000]([/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]Return[/COLOR] [COLOR=#9999cc]"Zyzoom.org/vb"[/COLOR]
[COLOR=#0000ff]EndFunc[/COLOR]
كود:
[COLOR=#9999cc][COLOR=#f000ff]#Include[/COLOR] <Array.au3>[/COLOR]
[COLOR=#009933];متغير[/COLOR]
[COLOR=#aa0000]$DD[/COLOR] [COLOR=#ff0000]=[/COLOR] m[COLOR=#ff0000]([/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0080ff]_ArrayDisplay[/COLOR][COLOR=#ff0000]([/COLOR][COLOR=#aa0000]$DD[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#009933];مكان الكتابة[/COLOR]
[COLOR=#009933];لا يقبل في المصفوفات[/COLOR]
[COLOR=#0000ff]Func[/COLOR] m[COLOR=#ff0000]([/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]Local[/COLOR] [COLOR=#aa0000]$ARRAY[/COLOR][COLOR=#ff0000][[/COLOR][COLOR=#ac00a9]2[/COLOR][COLOR=#ff0000]][/COLOR] [COLOR=#ff0000]=[/COLOR] [COLOR=#ff0000][[/COLOR][COLOR=#9999cc]"Ashalshaikh"[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]"Zyzoom.org/vb"[/COLOR][COLOR=#ff0000]][/COLOR]
[COLOR=#0000ff]Return[/COLOR] [COLOR=#aa0000]$ARRAY[/COLOR]
[COLOR=#0000ff]EndFunc[/COLOR]
لاحظ :ـ لا تظهر الرسالة بعد الـ Return
كود:
[COLOR=#009933];متغير[/COLOR]
[COLOR=#aa0000]$DD[/COLOR] [COLOR=#ff0000]=[/COLOR] m[COLOR=#ff0000]([/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#aa0000]$DD[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#009933];مكان الكتابة[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR]m[COLOR=#ff0000]([/COLOR][COLOR=#ff0000])[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]Func[/COLOR] m[COLOR=#ff0000]([/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]Return[/COLOR] [COLOR=#9999cc]"Zyzoom.org/vb[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]"After Return"[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]EndFunc[/COLOR]
دالة بسيطة ليس لها فائدة :d:
هناك دالة أساسية تدعى StringLen لـ عد خانات نص !!
سنعمل واحدة مثلها
مثال بالدالة الأساسية :ـ
كود:
[COLOR=#009933];متغير[/COLOR]
[COLOR=#aa0000]$DD[/COLOR] [COLOR=#ff0000]=[/COLOR] [COLOR=#000090]StrIngLen[/COLOR][COLOR=#ff0000]([/COLOR][COLOR=#9999cc]"Zyzoom.org/VB"[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#aa0000]$DD[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#009933];مكان الكتابة[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#000090]StrIngLen[/COLOR][COLOR=#ff0000]([/COLOR][COLOR=#9999cc]"Zyzoom.org/VB"[/COLOR][COLOR=#ff0000])[/COLOR][COLOR=#ff0000])[/COLOR]
الفكرة :ـ
أن الدالة الأساسية StringSplit تقوم بتقسيم النص إلى مقاطع في مصفوفة حسب خانة تضعها !!
وأنا هنا وضعت التقسيم حسب "" أي ضع كل خانة في قيمة
وكعادة المصفوفات يكون الصف 0 هو عدد الصفوف !! << الذي يساوي عدد الخانات !!
لذا سنرجع الصف رقم 0 :d:
الكود :ـ
كود:
[COLOR=#009933];متغير[/COLOR]
[COLOR=#aa0000]$DD[/COLOR] [COLOR=#ff0000]=[/COLOR] m[COLOR=#ff0000]([/COLOR][COLOR=#9999cc]"Zyzoom.org/VB"[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#aa0000]$DD[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#009933];مكان الكتابة[/COLOR]
[COLOR=#000090]MsgBox[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000],[/COLOR]m[COLOR=#ff0000]([/COLOR][COLOR=#9999cc]"Zyzoom.org/VB"[/COLOR][COLOR=#ff0000])[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]Func[/COLOR] m[COLOR=#ff0000]([/COLOR][COLOR=#aa0000]$Text[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]Local[/COLOR] [COLOR=#aa0000]$RES[/COLOR] [COLOR=#ff0000]=[/COLOR] [COLOR=#000090]StrIngSplit[/COLOR] [COLOR=#ff0000]([/COLOR][COLOR=#aa0000]$Text[/COLOR][COLOR=#ff0000],[/COLOR][COLOR=#9999cc]""[/COLOR][COLOR=#ff0000])[/COLOR]
[COLOR=#0000ff]Return[/COLOR] [COLOR=#aa0000]$RES[/COLOR][COLOR=#ff0000][[/COLOR][COLOR=#ac00a9]0[/COLOR][COLOR=#ff0000]][/COLOR]
[COLOR=#0000ff]EndFunc[/COLOR]
