+ ارسال نظر
نمایش نتایج: از 1 به 1 از 1

موضوع: آشنایی با تابع در vb

  1. #1
    مدیرکل انجمنهای نور آسمان vorojax آواتار ها
    تاریخ عضویت
    Jun 2008
    محل سکونت
    همشهری حضرت عشق
    نوشته ها
    7,305
    تشکر
    6
    تشکر شده 0 بار در 0 ارسال

    پیش فرض آشنایی با تابع در vb

    در VB دو نوع تابع وجود دارد. یکی سابروتین که هیچ مقدار بازگشتی ندارد و دیگری فانکشن که یک مقدار بازگشتی. خود VB هم یکسری تابع داخلی دارد. مثلا تابع LoadPicture( ) برای قرار دادن تصویر در ابزارهایی است که توانایی نمایش تصویر را دارند. ما هم می توانیم برای خود، تابع تعریف کنیم.

    فایده تابع ها این است که می توان کد برنامه را دسته بندی کرد و هر وظیفه را به تابعی واگذار کرد.اشکال زدایی از برنامه آسان می شود. چون اگر برنامه در جایی خواسته ی ما را برآورده نکرد می دانیم این وظیفه مربوط به کدام قسمت است. اگر برنامه به کرات نیاز به اجرای یکسری کد داشته باشد می توان آن را در یک تابع نوشت و بعد آن را در مواقع مورد نیاز فراخوانی کرد. مثلا می توانیم تابعی برای رسم مستطیل بنویسیم که ابعاد آن را به عنوان ورودی دریافت کرده وآن را رسم کند.

    VB فایل های خاصی را برای نوشتن توابع اختصاص داده است که به آن ماژول می گویند. با وجود این فایل ها می توانید تابع هایی را که کاربرد زیادی دارد در این فایل ها ذخیره کرده ودر برنامه های مختلف از آنها استفاده کرد و در وقت صرفه جویی کرد.برای ایجاد این فایل ها روی پنجره Project کلید راست را فشار دهید و از قسمت Add ، Module را انتخاب کنید.

    پنجره Add Module باز می شود.

    از برگه New می توانید ماژول جدید به برنامه اضافه کنید. از برگه Existing می توانید فایل هایی را قبلا نوشته اید به برنامه اضافه کنید.

    در این جلسه با هم برنامه ای می نویسیم تا با شیوه ایجاد تابع آشنا شوید. این برنامه ریشه معادله درجه 2 را محاسبه می کند. ابتدا کنترل ها را بصورتی که در تصویر می بینید به فرم اضافه کنید و خواص آن را مطابق جدول زیر ست کنید.


    Form

    Name frmRoot

    Caption Root

    TextBox

    Name txtX2

    Text Empty

    Name txtX1

    Text Empty

    Name txtX0

    Text Empty

    Label

    Name lblResult

    BorderStyle 2-FixedSingle

    BackColor HighLight Text

    Command

    Name cmdOK

    Caption OK

    Name cmdExit

    Caption Exit

    بقیه اشیائی که در صفحه فرم می بینید همه Label هستند. بعد از آماده کردن فرم یک ماژول به برنامه اضافه کنید و نام آن را mduRoot بگذارید.

    در آن کد زیر را بنویسید.

    Public Function Delta(X2 As Integer,X1 As Integer,X0 As Integer)As Integer

    Delta = (X1 ^ 2) - (4 * X2 * X0)

    End Function

    این یک فانکشن است که به صورت عمومی(Public) تعریف شده است ، سه مقدار ورودی می گیرد که از نوع Integer است. فانکشن باید یک مقدار را به برنامه اصلی برگرداند. این مقدار برگشتی از نوع Integer است. مقداری را که می خواهیم به برنامه اصلبی برگردانیم باید ان را به متغییری هم نام با نام فانکشن نسبت دهیم. این فانکشن دلتای معادله را محاسبه می کند.

    بعد از فانکشن کد زیر را اضافه کنید.

    Public Sub Root(Delta As Integer, X2 As Integer, X1 As Integer)

    Select Case (Delta)

    Case Is < 0

    frmRoot.lblResult.Caption = "Dose not have Result"

    Case Is = 0

    frmRoot.lblResult.Caption = (X1 * (-1) + Sqr(Delta)) / (2 * X2)

    Case Is > 0

    frmRoot.lblResult.Caption=Str((X1*(-1)+Sqr(Delta))/(2* X2)) + "," _ + Str((X1 * (-1) - Sqr(Delta)) / (2 * X2))

    End Select

    End Sub

    این یک سابروتین است که مسئولیت پیدا کردن ریشه ها را بر عهده دارد.این سابروتین سه ورودی از نوع Integer می گیرد. ابتدا بررسی می کند که دلتا کوچکتر از صفر نباشد. Sqr که در این تابع استفاده شده یکی از توابع داخلی VB است که مقدار جذر عدد داخل پرانتز خود را بر می گرداند. Str هم عدد داخل پرانتز خود را به متن تبدیل می کند.

    در ادامه برای رویداد Click کنترل های cmdOK و cmdExit کد زیر را بنویسید.

    Private Sub cmdExit_Click()

    End

    End Sub



    Private Sub cmdOK_Click()

    Dim intDelta As Integer

    intDelta = mduRoot.Delta(txtX2.Text, txtX1.Text, txtX0.Text)

    Call mduRoot.Root(intDelta, txtX2.Text, txtX1.Text)

    End Sub

    متغییری تعریف کردیم تامقدار دلتای معادله را از فانکشن Delta بگیرد و در خود نگه دارد. ترتیب اجرای برنامه به این صورت است که ابتدا فانکشن اجرا می شود و مقدار برگشتی در متغییر intDelta ذخیره می شود. سپس برای بدست آوردن ریشه ها سابروتین Root به وسیله دستور Call فراخوانی می شود. برای اینکه با شرایطی از تابع خارج شویم دستور زیر را می نویسیم:

    Exit Sub یا Function

    با اینکه این برنامه معرف خوبه برای معرفی قابلیت های تابع نیست اما برای اشنا شدن با روش ساختن تابع مناسب است.

    منبع : http://vblearning.blogfa.com/
    اللهم عجل لولیک الفرج


    لــــطــف الــــهـی بکند کار خویش
    مـژده رحـــــمــــــت برساند سروش




  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    محل سکونت
    Advertising world
    نوشته ها
    Many

     

    حرز امام جواد

     

+ ارسال نظر

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را دارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  
کانال سپاه