~~  CrazyHackWorld - Revenge ~~ Siamo Tornati!! ~~ [PC - PSX - PS2 - PS3 -PSP - XBOX - XBOX 360 - NDS - WII] ° Soluzioni

Funzioni e Sub

« Older   Newer »
  Share  
gµññ€®$
view post Posted on 7/7/2011, 18:41




Gli elementi madre di un programma, quelli a cui è delegato il compito di contenere e gestire le routine e gli script VB che vengono lanciati allo scatenarsi di un evento, sono le Funzioni e le Sub.


Spesso non si fa molta distinzione tra questi elementi, dato che svolgono un ruolo abbastanza simile. La differenza tra loro è che una Funzione raccoglie una serie di operazioni, o script, che insieme formano una routine e restituisce un valore; una Sub è un programma all'interno di un programma e cosi via fino al software finale. Altra differenza è che solo una Sub viene chiamata allo scatenarsi di un evento, mentre una Funzione viene chiamata all'interno di una Sub al verificarsi di una data condizione o a prescindere.


Sia le Funzioni che le Sub possono essere pubbliche o private: pubbliche quando sono visibili a tutto il programma ed a tutte le Form e generalmente vengono inserite in un modulo di classe esterno; private quando fanno parte della Form in cui nascono, vivono e muoiono. Si utilizzano le parole chiave Public e Private e se omesse VB da per scontato che si tratta di una Funzione o di una Sub privata.


La sintassi di una Funzione pubblica è la seguente:

Public Function NomeFunzione (argomento As tipo)
istruzioni
End Function

La sintassi di una Funzione privata è la seguente:
Private Function NomeFunzione (argomento As tipo)
istruzioni
End Function

ed è possibile omettere la parola chiave Private.


Sintatticamente parlando per eseguire una Sub non bisogna far altro che sostituire la parola chiave Function con Sub e chiudere il blocco con End Sub al posto di End Function.


Per chiamare una Funzione o una Sub dall'esterno o all'interno di un'altra Funzione o Sub, basta far riferimento al nome e passare tra parentesi gli eventuali valori da assegnare agli argomenti (o parametri, o ancora variabili, che dir si voglia); è possibile utilizzare la parola chiave opzionale Call prima del nome della Funzione o Sub che sia.


Facciamo un esempio tanto chiarificatore quanto inutile ai fini pratici della realizzazione di un programma. Si crei un nuovo EXE standard e si acceda al codice della Form dal menu

Visualizza / Codice

e si inserisca il codice per la seguente Funzione:
Private Function Messaggio(testo As String)
MsgBox testo
End Function

Alla Funzione Messaggio() passo la variabile testo di tipo String che rappresenta il testo del messaggio che lanceremo. Si acceda poi alla Funzione / evento Form_Load() semplicemente facendo doppio click in un punto qualsiasi della Form dalla visualizzazione struttura e si richiami la Funzione Messaggio() come segue:
Private Sub Form_Load()
Call Messaggio("Benvenuto!")
End Sub

In questa fase valorizzo la variabile testo inserendo materialmente il messaggio di benvenuto: il risultato sarà infatti una MsgBox con la scritta Benvenuto!

 
Top
0 replies since 7/7/2011, 18:41   265 views
  Share