Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    4

    Function,msgbox, sub form litigano

    Salve,qualcuno saprebbe dirmi perchè la segunete routien non funziona?

    dovrebbe visualizzare una msgbox con riportato l'area del cerchio in base al valore del raggio 5,3

    Function AreaCerchio(Raggio As Double)
    AreaCerchio = Raggio * Raggio * 3.14
    Dim Area1 As Double
    Area1 = AreaCerchio(5, 4)
    MsgBox Area1
    End Function

    quando lo mando in esecuzione si vede il form vuoto ma nessun msgbox,
    ho notato ceh msgbox funziona solo qundo + inserityo nella procedura form, ma se provo a spostare l'intero codice al suo interno

    mi da errore ebd sub viene trasformato in end function



    ma la proprietà function mi sta facendo impazzire sub form non l'accetta fuori da questa ottengo un form vuota xchè msgbox
    da quanto ho visto funziona solo all'interno della routine sub form

    Help me qazaz Function,msgbox, sub form litigano Function,msgbox, sub form litigano

  2. #2

    Re: Function,msgbox, sub form litigano

    Originariamente inviato da qazaz
    codice:
    Function AreaCerchio(Raggio As Double)
        AreaCerchio = Raggio * Raggio * 3.14
        Dim Area1 As Double
        Area1 = AreaCerchio(5, 4)
        MsgBox Area1
    End Function
    hai sbalgiato il passagio di argomenti alla funzione!se vuoi passare un numero non intero(con la virgola), devi usare il punto e non la virgola!!]:gren:
    poi scrivici public/private davanti alla funzione!!

    e poi non ci ho capito niente!!
    Scrivi in ITALIANO!

    by giuSp [.NetDeveloper]

    ___________
    un po' di VB non fa male!....?
    C# more power to you!!

  3. #3
    HEY!!!

    Guarda bene il codice...

    Non arrivi mai ad eseguire il msgbxo, poiche' fai una recursione dalla riga precedente il msgbox tornando alla testa della funzione...

    E' sempre meglio tenere la tua fuinzione staccata dal resto, e richiamarla da un'altra parte nel form!

  4. #4
    Utente bannato
    Registrato dal
    Apr 2002
    Messaggi
    546
    Il tuo codice è giusto, il problema è:
    ....digita così per l'msgbox vuota:
    MsgBox (Area1)

    per concludere........... areacerchio non è bidimensionata (quindi l'errore.......)
    riscrivila così:

    Raggio = 2
    AreaCerchio (Raggio)

    Function AreaCerchio(Raggio As Double)
    AreaCerchio = Raggio * Raggio * 3.14
    Dim Area1 As Double
    Area1 = AreaCerchio
    MsgBox Area1
    End Function





    link
    homepage
    http://%77%77%77%2e%74%77%6f%72%6b%2e%69%74/
    software
    http://%77%77%77%2e%74%77%6f%72%6b%2...programmi.html
    forum
    http://%77%77%77%2e%74%77%6f%72%6b%2...um/default.asp

  5. #5
    Originariamente inviato da steno12
    Il tuo codice è giusto, il problema è:
    ....digita così:
    MsgBox (Area1)
    mi sa proprio di no!!

    coma ha detto il moderatore, è utilizzata una funzione ricorsiva, che quando arriva all' istruzione
    codice:
    Area1 = AreaCerchio(5, 4)
    la funzione riesegue se stessa, per un loop infinito!!

    basta tagliare le righe
    codice:
        Dim Area1 As Double
        Area1 = AreaCerchio(5, 4)
        MsgBox Area1
    ed inserirle in un command nell'evento click!!


    -------------------------->>
    Originariamente inviato da steno12
    MsgBox (Area1)
    poi se utilizzi le parentesi per gli argomenti della msgbox,(utilizzi msgbox come function) commetti un grave errore, se non utilizzi un variabile che contenga il valore di ritorno!!
    codice:
    RetVal=MsgBox("ma va?")
    ------------------------->>
    by giuSp [.NetDeveloper]

    ___________
    un po' di VB non fa male!....?
    C# more power to you!!

  6. #6

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    271
    qazaz ha preso questo esempio di codice dal capitolo 3 dove spiega le
    funzioni e le sub del manuale online di visual basic che offre html.it

    Credo che a lui non sia molto chiaro come sistemare il codice: cioè
    dove andare a richiamare la funzione:infatti nel capitolo non ti dice
    ovviamente perchè tratta delle funzioni dove devi andare a richiamarle

    Questa è la funzione
    ----------------------------------------------------------------------
    Function AreaCerchio(Raggio As Double) As Double
    AreaCerchio = Raggio * Raggio * 3.14
    End Function
    ----------------------------------------------------------------------
    Questo codice che tu hai visto non fa parte della funzione,ma ti dice come richiamare la funzione

    Dim Area1 As Double ------> dichiara una variabile
    Area1 = AreaCerchio(5.4)------->assegna a questa variabile la funzione cioè area cerchio con il parametro cioè Raggio che
    assume il valore che vuoi tu in questo caso 5.4.
    Quindi area cerchio= raggio(5.4) * raggio(5.4) * 3.14
    MsgBox Area1 --------> ti dà il risultato di questo calcolo

    Quindi prova a creare un bottone e nell'evento click del
    tuo bottone metti questo codice,clicca e vedi che ti apparirà il
    tuo messagebox

    Dim Area1 As Double
    Area1 = AreaCerchio(5.4)
    MsgBox Area1

  8. #8
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da steno12
    Il tuo codice è giusto

    :quote: :quote: :quote: :quote:

    ma che dici?


  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    271
    Function AreaCerchio(Raggio As Double)
    AreaCerchio = Raggio * Raggio * 3.14
    Dim Area1 As Double
    Area1 = AreaCerchio(5, 4)
    MsgBox Area1
    End Function

    Questo codice non è corretto non fa niente se uno lo prova ad
    eseguire.
    Bisogna fare come ha detto Wild78

  10. #10
    Utente bannato
    Registrato dal
    Apr 2002
    Messaggi
    546
    Dico che ho dimenticato il .......NON
    capita..............

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.