تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
بعض الدوال في vb.NET
#1
كاتب الموضوع : جهاد العريقي

1-بعض الدوال الخاصة با لتعامل مع الريجستري:

A-SaveSetting(appname, section, key, setting)



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


كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        SaveSetting[/COLOR][color=#007700]([/color][color=#dd0000]"MyForm"[/color][color=#007700], [/color][color=#dd0000]"Startup"[/color][color=#007700], [/color][color=#dd0000]"Top"[/color][color=#007700], [/color][color=#0000bb]Me[/color][color=#007700].[/color][color=#0000bb]Top[/color][COLOR=#007700])
        [/COLOR][color=#0000bb]SaveSetting[/color][color=#007700]([/color][color=#dd0000]"MyForm"[/color][color=#007700], [/color][color=#dd0000]"Startup"[/color][color=#007700], [/color][color=#dd0000]"Left"[/color][color=#007700], [/color][color=#0000bb]Me[/color][color=#007700].[/color][color=#0000bb]Left[/color][COLOR=#007700])
[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

وظيفه هذا المثال هو حفظ اعدادات النافذة .
AppName يمثل اسم المفتاح الرئيسي للبرنامج في مسجل النظام وهو في مثلناء (MyForm).
Section يمثل المفتاح الفرعي الذي سكون متفرع عن المفتاح AppNAmeوهو هنا (Startup) .
Key ويمثل اسم مدخل القيمة الذي انشئا ناه تحت المفتاح الفرعي السابق وهنا في المثال السابق Top or Left وهذا المفتاح من النوع String.

Setting ويمثل اسم القسمة التي نريد ان نخزنها في مدخل القيمة السابق ..

الآن إذا أردت أن اتاكد من المثال السابق ومن القيم المخزنة اتبع الخطوات الآتية :

من Run – regedit – VB and VBA program Settings – ستجد الاسم الذي أنت استخدمته وهو في المثال السابق (MyForm) وستجد بداخلة المفتاح الفرعي Startup والذي ستجد بداخلة قيم Top,Left.


2-DeleteSetting(appname, section[, key]):

وهذه الداله كما هو وضح من اسمها أنها لحذف قيمة من الريجستري ولها ثلاثة وسائط.. المثال :


كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        DeleteSetting[/COLOR][color=#007700]([/color][color=#dd0000]"MyForm"[/color][color=#007700], [/color][color=#dd0000]"Startup"[/color][color=#007700], [/color][color=#dd0000]"Top"[/color][COLOR=#007700])
        [/COLOR][color=#0000bb]DeleteSetting[/color][color=#007700]([/color][color=#dd0000]"MyForm"[/color][color=#007700], [/color][color=#dd0000]"Startup"[/color][color=#007700], [/color][color=#dd0000]"Left"[/color][COLOR=#007700])
[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

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

طبق المثال ومن ثم ابحث عن اسم التطبيق ستلاحظ انه موجود ولكن تم حذف قيم الوسيط Key .

ولكن ان اردت ان تحذف التطبيق نهائيا يمكنك استخدام الاتي :


كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        DeleteSetting[/COLOR][color=#007700]([/color][color=#dd0000]"MyForm"[/color][COLOR=#007700])
[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

3-GetSetting(appname, section, key[, default]):

هذه الدالة وظيفتها استرجاع البيانات .. ماذا نعني باسترجاع البيانات ؟
نعني باسترجاع البيانات الأتي:

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

المثال :

كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        Me[/COLOR][color=#007700].[/color][color=#0000bb]Top [/color][color=#007700]= [/color][color=#0000bb]GetSetting[/color][color=#007700]([/color][color=#dd0000]"MyApp"[/color][color=#007700], [/color][color=#dd0000]"Startup"[/color][color=#007700], [/color][color=#dd0000]"Top"[/color][color=#007700], [/color][color=#0000bb]100[/color][COLOR=#007700])
        [/COLOR][color=#0000bb]Me[/color][color=#007700].[/color][color=#0000bb]Left [/color][color=#007700]= [/color][color=#0000bb]GetSetting[/color][color=#007700]([/color][color=#dd0000]"MyApp"[/color][color=#007700], [/color][color=#dd0000]"Startup"[/color][color=#007700], [/color][color=#dd0000]"Left"[/color][color=#007700], [/color][color=#0000bb]150[/color][COLOR=#007700])
[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]


سنلاحظ انه عند تنفيذ البرنامج سيضع النافذه عن النقطه (100و150) .

اذا لهذه الداله ثلاثه وسائط والوسيط الرابع اختياري
الوسيط الاول AppName يمثل اسم البرنامج المراد استرجاع البيانات منه ويجب ان يكون هذا الاسم موجود مسبقاء.
الوسيط Section ويمثل اسم المفتاح الفرعي للمفتاح الرئيسي المراد استرجاع البيانات منه.
الوسيط Key يمثل اسم مدخل القيمه والموجود تحت المفتاح الفرعي السابق والذي سنسترجع قيمته.
الوسيط الرابع وهو اختياري Default ويمثل قيمه نقوم بوضعها في حاله عدم عثور الداله GetSetting على القيمه التي نريد استرجاعها فانها تسترجع هذه القيمة عوضا عنها.

4-GetAllSettings(appname, section):

ترجع كل المفاتيح والاعدادات للقسم المحدد في الريجستري في مصفوفه ثنائيه البعد

مثال:


كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        Dim allsettings
        AllSettings [/COLOR][color=#007700]= [/color][color=#0000bb]GetAllSettings[/color][color=#007700]([/color][color=#dd0000]"MyApp"[/color][color=#007700], [/color][color=#dd0000]"Startup"[/color][COLOR=#007700])
[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

مثال اخر :


كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        Dim allsettings
        Dim i [/COLOR][color=#007700]As [/color][COLOR=#0000bb]Integer
        allsettings [/COLOR][color=#007700]= [/color][color=#0000bb]GetAllSettings[/color][color=#007700]([/color][color=#dd0000]"Myapp"[/color][color=#007700], [/color][color=#dd0000]"Startup"[/color][COLOR=#007700])
        For [/COLOR][color=#0000bb]i [/color][color=#007700]= [/color][color=#0000bb]0 To allsettings[/color][color=#007700].[/color][color=#0000bb]GetUpperBound[/color][color=#007700]([/color][color=#0000bb]1[/color][COLOR=#007700])
            [/COLOR][color=#0000bb]Me[/color][color=#007700].[/color][color=#0000bb]Text [/color][color=#007700]= ([/color][color=#0000bb]allsettings[/color][color=#007700]([/color][color=#0000bb]i[/color][color=#007700], [/color][color=#0000bb]1[/color][color=#007700]) & [/color][color=#dd0000]" = " [/color][color=#007700]& [/color][color=#0000bb]allsettings[/color][color=#007700]([/color][color=#0000bb]i[/color][color=#007700], [/color][color=#0000bb]0[/color][COLOR=#007700]))
        [/COLOR][COLOR=#0000bb]Next
End Sub  
[/COLOR][/COLOR]

سيكون Left=50


B-دوال التعامل مع التطبيقات الخارجيه في VB.NET

لتشغيل تطبيقات من داخل Vb.net هناك دوال لعمل ذلك ومنها الاتي:

1- الدالة Shell :
Shell(path_name[, style][, wait][, timeout]) هذا الشكل العام لها


وهي معروفه كما في VB6 وهذه الداله تعيد اي قيمه تمثل ID للبرنامج اذا نجت او تعيد صفر اذا لم تنجح .. غير ان هذه الداله لايمرر لها مسار البرنامج كما هو الحال في VB6 ..
وهذا مثال لها لتشغيل NoteBad (برنامج المفكرة)


كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        Dim npad
        NPAD [/COLOR][color=#007700]= [/color][color=#0000bb]Shell[/color][color=#007700]([/color][color=#dd0000]"notepad.exe"[/color][color=#007700], [/color][color=#0000bb]AppWinStyle[/color][color=#007700].[/color][color=#0000bb]NormalFocus[/color][COLOR=#007700])
[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]


الوسيط الاول يتم تمرير اسم البرنامج المراد
الوسيط الثاني يتم تمرير احدى القيم التاليه:
AppWinStyle.Hide
AppWinStyle.MaximizedFocus
AppWinStyle.MinimizedFocus
AppWinStyle.MinimizedNoFocus
AppWinStyle.NormalFocus
AppWinStyle.NormalNoFocus

2- AppActivate(title[, wait]) :

وظيفه الداله تستخدم لتفعيل برنامج مفتوح با الطريقه Shell
وهذا مثال للداله:


كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        Dim notepadID [/COLOR][color=#007700]As [/color][COLOR=#0000bb]Integer

  [/COLOR][COLOR=#dd0000]' Shell runs a new instance of Notepad.    
   notepadID = Shell("NOTEPAD.EXE", AppWinStyle.NormalFocus)
        ' [/COLOR][color=#0000bb]Activate a running Notepad process[/color][COLOR=#007700].
        [/COLOR][color=#0000bb]AppActivate[/color][color=#007700]([/color][color=#dd0000]"Untitled - NotePad"[/color][COLOR=#007700])
        [/COLOR][COLOR=#dd0000]' AppActivate can also use the return value of the Shell function.
        ' [/COLOR][color=#0000bb]Activate the [/color][color=#007700]new [/color][color=#0000bb]instance of Notepad[/color][COLOR=#007700].  
        [/COLOR][color=#0000bb]AppActivate[/color][color=#007700]([/color][color=#0000bb]notepadID[/color][COLOR=#007700])
    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

C- بعض الدوال الرياضيه في VB.NET

الدالة Abs

الدالة abs : ترجع القيمة المطلقة لعدد معين
مثال :


كود :
[color=#000000][COLOR=#0000bb]Imports System[/color][color=#007700].[/color][COLOR=#0000bb]Math
[/COLOR][color=#007700]Public Class [/color][COLOR=#0000bb]Form1

    [/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Abs[/color][color=#007700](-[/color][color=#0000bb]1[/color][COLOR=#007700]))
        [/COLOR][color=#0000bb]MsgBox[/color][color=#007700]([/color][color=#0000bb]Abs[/color][color=#007700]([/color][color=#0000bb]1[/color][COLOR=#007700]))
    [/COLOR][COLOR=#0000bb]End Sub
End [/COLOR][COLOR=#007700]Class  
[/COLOR][color=#0000bb][/color][/COLOR]

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

الدالة Sin:
الدالة Sin : تعطيك جيب الزاوية

كود :
[color=#000000][COLOR=#0000bb]    [/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
               MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Sin[/color][color=#007700]([/color][color=#0000bb]3.14[/color][COLOR=#007700]))
    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

سيكون الناتج هو الرقم 0.0015926599168683 ولكن ان استخدمنا الدالة الاتية


الدالة Tan :
الدالة Tan : تعطيك ظل الزاوية


كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Round[/color][color=#007700]([/color][color=#0000bb]Tan[/color][color=#007700]([/color][color=#0000bb]2.5[/color][COLOR=#007700])))
    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

الناتج -1


الدالة Log:
الدالة Log : تعطيك اللوغاريثم الطبيعي و ليس العشري

كود :
[color=#000000][COLOR=#0000bb]    [/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Log[/color][color=#007700]([/color][color=#0000bb]2.4[/color][COLOR=#007700]))
    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

الناتج 0.8754687373539


الدالة Round :
الدالة Round : تقوم بتقريب العدد

كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Round[/color][color=#007700]([/color][color=#0000bb]2.14[/color][COLOR=#007700]))
        [/COLOR][color=#0000bb]MsgBox[/color][color=#007700]([/color][color=#0000bb]Round[/color][color=#007700]([/color][color=#0000bb]2.55[/color][COLOR=#007700]))

    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

في الاولى سينتج2 لان .14 اقل من النصف, وفي الثانية سينتج 3 لان .55 اكثر من النصف .

الدالة Cos :
الدالة Cos : تعطيك جيب تمام زاوية تقاس بنظام الراديان .

كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Cos[/color][color=#007700]([/color][color=#0000bb]3.14[/color][COLOR=#007700]))  
    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

سيكون الناتج - 0.99999873172754 اي قريب من السالب واحد .
ولكن باستخدام الدالة Round :

كود :
[color=#000000][COLOR=#0000bb]       MsgBox[/color][color=#007700]([/color][color=#0000bb]Round[/color][color=#007700]([/color][color=#0000bb]Cos[/color][color=#007700]([/color][color=#0000bb]3.14[/color][COLOR=#007700])))  
[/COLOR][color=#0000bb][/color][/COLOR]

الناتج سيكون 1-


الدالة Acos :
ترجع الزاوية التي جيب تمامها العدد المحدد

كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Acos[/color][color=#007700]([/color][color=#0000bb]0.25[/color][COLOR=#007700]))
    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

الناتج 1.31811607165282
هذه الدالة يمرر لها قيمة بين 1,-1

الدالة BigMul :
هذه الدالة ترجع حاصل ضرب العددين الممرين لها

كود :
[color=#000000][COLOR=#0000bb]    [/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Math[/color][color=#007700].[/color][color=#0000bb]BigMul[/color][color=#007700]([/color][color=#0000bb]2[/color][color=#007700], [/color][color=#0000bb]6[/color][COLOR=#007700]))
    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

الناتج 12

الدالة Pow :
ترجع الاس للعدد الاول حيث ان البارميتر الاول يمثل العدد والبارميتر الثاني يمثل القوة او الاس .


كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Math[/color][color=#007700].[/color][color=#0000bb]Pow[/color][color=#007700]([/color][color=#0000bb]2[/color][color=#007700], [/color][color=#0000bb]2[/color][COLOR=#007700]))
    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

الناتج 4

ملاحظه هامه:

يجب اولا التصريح عن فضاء الاسماء كا الاتي:
Imports System.Math
}}}}
تم الشكر بواسطة:
#2
وهذه مجموعة من الدوال للتعمل مع التاريخ

الداله Weekday :

هذه الداله تعطيك رقم اليوم (من 1 الى 7 ) لتاريخ معين ولهذه الداله تا بعين من نوع تاريخ أي DataType Date ..
التابع الاول يرجع التاريخ الذي تريد رقم يومه ..
والثاني يرجع اول يوم في الاسبوع ..


كود :
[COLOR=#000000][COLOR=#0000bb]

[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click
        
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]Weekday[/color][color=#007700]([/color][color=#0000bb]Now[/color][color=#007700], [/color][color=#0000bb]FirstDayOfWeek[/color][color=#007700].[/color][color=#0000bb]Saturday[/color][COLOR=#007700]))

[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

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


كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click

        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]DateSerial[/color][color=#007700](([/color][color=#0000bb]Now[/color][color=#007700].[/color][color=#0000bb]Year[/color][color=#007700]), ([/color][color=#0000bb]Now[/color][color=#007700].[/color][color=#0000bb]Month[/color][color=#007700]), ([/color][color=#0000bb]Now[/color][color=#007700].[/color][color=#0000bb]Day[/color][COLOR=#007700])))

[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

واذا اردنا ان نعرف التاريخ بعد عة ايام مثلا بعد 200 يوم يمكن ذلك من خلال الاتي:


كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click

        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]DateSerial[/color][color=#007700](([/color][color=#0000bb]Now[/color][color=#007700].[/color][color=#0000bb]Year[/color][color=#007700]), ([/color][color=#0000bb]Now[/color][color=#007700].[/color][color=#0000bb]Month[/color][color=#007700]), ([/color][color=#0000bb]Now[/color][color=#007700].[/color][color=#0000bb]Day[/color][color=#007700]) + [/color][color=#0000bb]200[/color][COLOR=#007700]))

[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

سنلاحظ انه من تاريخ 14/8/2007 الى بعد 200 يوم يكون التاريخ 1/3/2008 انشاء الله..

الداله DatePart:
من اسم هذة الداله عملها هو تجزئه التاريخ أي تاريخ , ولهذةالداله تابعين

التابع الاول يمثل الجزءا الذي نريده من التاريخ .
التابع الثاني يمثل التاريخ الذي نريد جزءا منه (نريد ان نجزئه) .


كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click

        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]DatePart[/color][color=#007700]([/color][color=#0000bb]DateInterval[/color][color=#007700].[/color][color=#0000bb]Day[/color][color=#007700], [/color][color=#0000bb]Now[/color][COLOR=#007700]))

[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

End Sub

وللداله DateInterval الخصائص الاتية :
Day
DayOfYear
Hour
Minute
Month
Quarter
Second
WeekDay
WeekOfYear
Year


الداله DateDiff

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

هذا المثال لمعرفة عدد السنين من التاريخ المحدد 3/1/2006 وحتى يومنا هذا


كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Button1_Click[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles Button1[/color][color=#007700].[/color][COLOR=#0000bb]Click

        Dim date1 [/COLOR][color=#007700]As [/color][color=#0000bb]Date [/color][color=#007700]= [/color][COLOR=#ff8000]#3/1/2006#

        [/COLOR][color=#0000bb]MsgBox[/color][color=#007700]([/color][color=#0000bb]DateDiff[/color][color=#007700]([/color][color=#0000bb]DateInterval[/color][color=#007700].[/color][color=#0000bb]Year[/color][color=#007700], [/color][color=#0000bb]date1[/color][color=#007700], [/color][color=#0000bb]Now[/color][color=#007700]).[/color][color=#0000bb]ToString [/color][color=#007700]+ [/color][color=#dd0000]" Year"[/color][COLOR=#007700])
[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

واذا اردنا ان نعرف عدد الايام يمكن ذلك من خلال استبدال DateInterval.Day
وهكذا ..
}}}}
تم الشكر بواسطة:
#3
وهذة مجموعة من الدوال للتعامل مع الوقت


الدالة TimeSerial

هذة الدالة لها ثلاثة معملات الاول يمثل الساعات والثاني الدقائق والثالث الثواني


كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]Private [/color][color=#0000bb]Sub Form1_Load[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles MyBase[/color][color=#007700].[/color][COLOR=#0000bb]Load

        Dim alarmTime [/COLOR][color=#007700]As [/color][color=#0000bb]Date [/color][color=#007700]= [/color][color=#0000bb]TimeSerial[/color][color=#007700]([/color][color=#0000bb]12 [/color][color=#007700]- [/color][color=#0000bb]3[/color][color=#007700], -[/color][color=#0000bb]15[/color][color=#007700], [/color][color=#0000bb]0[/color][COLOR=#007700])
        [/COLOR][color=#0000bb]Me[/color][color=#007700].[/color][color=#0000bb]Text [/color][color=#007700]= [/color][COLOR=#0000bb]alarmTime

    End Sub  
[/COLOR][/COLOR]

الدالة TimeOfDay

هذة الدالة تستخدم في ارجاع الوقت الحالى للنظام


كود :
[color=#000000][COLOR=#0000bb] [/color][color=#007700]Private [/color][color=#0000bb]Sub Form1_Load[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles MyBase[/color][color=#007700].[/color][COLOR=#0000bb]Load
        Dim currentTime [/COLOR][color=#007700]As [/color][color=#0000bb]Date [/color][color=#007700]= [/color][COLOR=#0000bb]TimeOfDay
        MsgBox[/COLOR][color=#007700]([/color][color=#0000bb]currentTime[/color][COLOR=#007700])

    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

الدالة TimeString

هذة الدالة تستخدم لعرض الوقت الحالي.

كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Form1_Load[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles MyBase[/color][color=#007700].[/color][COLOR=#0000bb]Load

MsgBox[/COLOR][color=#007700]([/color][color=#dd0000]"The current time is " [/color][color=#007700]& [/color][color=#0000bb]TimeString[/color][COLOR=#007700])

[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

الدالة Format
تستخدم هذة الدالة لعرض الوقت الحالى للجهاز ويتم العرض بحسب تهيءة المستخدم لهذة الدالة .

كود :
[COLOR=#000000][COLOR=#0000bb]
    [/COLOR][color=#007700]Private [/color][color=#0000bb]Sub Form1_Load[/color][color=#007700]([/color][color=#0000bb]ByVal sender [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Object[/color][color=#007700], [/color][color=#0000bb]ByVal e [/color][color=#007700]As [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]EventArgs[/color][color=#007700]) [/color][color=#0000bb]Handles MyBase[/color][color=#007700].[/color][COLOR=#0000bb]Load

        MsgBox[/COLOR][color=#007700]([/color][color=#dd0000]"The formatted time is " [/color][color=#007700]& [/color][color=#0000bb]Format[/color][color=#007700]([/color][color=#0000bb]Now[/color][color=#007700], [/color][color=#dd0000]"hh.mm.ss"[/color][COLOR=#007700]))

[/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]
}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [مقال] شرح الدوال العامة في كلاس ( Process ) Dev Saeed 4 1,268 06-04-15, 06:54 PM
آخر رد: es5s930
  [مقال] كلام في استخدام الدوال والروتينات function and sub سعود 4 1,248 04-05-14, 11:06 PM
آخر رد: Ali Wisam
  التعامل مع Registry - الجزء الأول ( شرح الدوال ) RaggiTech 1 1,340 02-10-12, 10:37 AM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم