آژانس هواپیماییexchanging

توابع و Msgbox

شروع موضوع توسط james007 ‏10 مارس 2006 در انجمن Visual Basic 6

  1. james007

    james007 کاربر تازه وارد

    تاریخ عضویت:
    ‏27 ژانویه 2006
    نوشته ها:
    37
    تشکر شده:
    2
    محل سکونت:
    جزیره خضرا
    سلام
    کی میتونه این دو خط کد رو با با توابع IIF و Switch و Choose بنویسه.
    (کاربر Yes رو کلیک کرده است)
    کد:
    intResponse = MsgBox("Are you sure you want to quit", vbYesNo + 32 + vbDefaultButton1, "Exit")
    If intRespone = 6 Then
    End
    End If
     
  2. james007

    james007 کاربر تازه وارد

    تاریخ عضویت:
    ‏27 ژانویه 2006
    نوشته ها:
    37
    تشکر شده:
    2
    محل سکونت:
    جزیره خضرا
    بابا یکی جواب بده.
    چه طور میشه تو کد بالا به جای IF از IIF و Switch و Choose استفاده کرد
     
  3. Parham

    Parham Registered User

    تاریخ عضویت:
    ‏24 سپتامبر 2003
    نوشته ها:
    1,039
    تشکر شده:
    1
    اون کد شما چه ارتباطی به این توابع داره؟!!
     
  4. balabala

    balabala کاربر قدیمی پرشین تولز

    تاریخ عضویت:
    ‏22 می 2005
    نوشته ها:
    7,350
    تشکر شده:
    1,322
    محل سکونت:
    یه خورده اونورتر
    با Iif میشه ولی switch و choose منظورت چیه؟
     
  5. balabala

    balabala کاربر قدیمی پرشین تولز

    تاریخ عضویت:
    ‏22 می 2005
    نوشته ها:
    7,350
    تشکر شده:
    1,322
    محل سکونت:
    یه خورده اونورتر
    یه چیزی شبیه این؟ ولی برای چی لقمه رو بپیچونیم؟

    کد:
     
    Select Case IIf(MsgBox("Are you sure you want to quit", vbYesNo + 32 + vbDefaultButton1, "Exit") = vbYes, True, False) 
    Case True
    End
    End Select
     
    
     
  6. balabala

    balabala کاربر قدیمی پرشین تولز

    تاریخ عضویت:
    ‏22 می 2005
    نوشته ها:
    7,350
    تشکر شده:
    1,322
    محل سکونت:
    یه خورده اونورتر
    یا راحت تر و منطقی ترش:

    کد:
     
    Select Case MsgBox("Are you sure you want to quit", vbYesNo + 32 + vbDefaultButton1, "Exit") 
    Case vbYes
    End
    End Select
    
     
  7. appbannerkhuniresbanner
  8. james007

    james007 کاربر تازه وارد

    تاریخ عضویت:
    ‏27 ژانویه 2006
    نوشته ها:
    37
    تشکر شده:
    2
    محل سکونت:
    جزیره خضرا
    این کد رو نگاه کنید
    کد:
    Private Sub Command1_Click()
    Dim intResponse As Single
    intResponse = MsgBox("Are you sure you want to quit", vbYesNo + 32 + vbDefaultButton1, "Exit")
    Select Case intResponse
        Case Is = 6
            End
    End Select
    End Sub
    این یکی رو هم نگاه کنید
    کد:
    Private Sub Command1_Click()
    Dim intResponse As Single
    intResponse = MsgBox("Are you sure you want to quit", vbYesNo + 32 + vbDefaultButton1, "Exit")
    If intRespone = 6 Then
    End
    End If
    End Sub
    اگه دستور IF چندان پیچیده نباشد میتوانیم به جای آن از IFF استفاده کنیم
    همانطور که IF یک نوع ساده شده دارد تابع Choose هم نوع ساده شده دستور Select Case میباشد.
    من فقط میخواهم با کاربرد این دو سه دستور آشنا بشم. با توجه به این تعریف ها, چه طور میشه که بگی اگر کاربر Yes را کلیک کرد(همون شماره 6) از برنامه خارج بشه. با تابع IIF یا Choose
     
  9. balabala

    balabala کاربر قدیمی پرشین تولز

    تاریخ عضویت:
    ‏22 می 2005
    نوشته ها:
    7,350
    تشکر شده:
    1,322
    محل سکونت:
    یه خورده اونورتر
    IIF سه ورودی داره اولیش شرط، و اگر برقرار بود مقدار دوم رو برمیگردونه ، اگر برقرار نبود مقدار سوم.

    به IIF نمیشه یه تابع یا روال یا دستور رو فرستاد (البته منظورم ورودیهای 2 و 3 هست و ورودی اول حتما باید بولین باشه. یعنی باید شرط رو با یک = در اون ذکر کرد که بصورت بولین به فانکشن بره). یعنی شما نمیتونید بگید:
    کد:
     
    Iff(msgbox("ok", vbYesNo)=vbYes, [B][COLOR=red]End[/COLOR][/B], False)
    
    یعنی نمیشه گفت در صورت درست بودن دستور End رو اجرا کن. درواقع به تنهایی نمیشه این کار رو کرد از یک دستور یا شرط دیگه هم باید استفاده کرد.

    تنها کار IIF اینکه در صورت صحیح بودن یک شرط بجای برگرداندن مقادر True و False میشه ازش درخواست مقادیر متفاوتی رو اون هم در یک دستور کرد.