Funzioni, istruzioni e condizioni con visual basic 6 lezione 2
Posted by k8 - Articolo di spud---. February 8, 2009, 10:29 am
IProgrammatori.it

Ecco la seconda lezione

Argomenti trattati:
-Funzioni val e cstr
-le istruzioni msgbox ed inputbox
-le condizioni (if)

Per prima cosa vi spiegherò le funzioni val e cstr:
la funzione val() serve a convertire una stringa in numero
facciamo subito un esempio:

 

Codice:
num=val(text1.text)


in questo spezzone di codice si prende il contenuto del textbox "text1" e lo si mette
nella variabile "num", ma come ben sapete il textbox non è altro che una normale casella
di testo, e le caselle di testo contengono appunto testo, che noi, con la funzione val()
andremo a convertire in numero...

La funzione cstr(), invece, converte un numero in stringa:

 

Codice:
label1.caption=cstr(num)


In questo caso andiamo a scrivere nella label "label1" (che è un contenitore di testo), il contenuto
c'è da dire che al posto di cstr() si può usare anche str(), è la stessissima cosa.

Da notare che il compilatore di vb, per piccoli programmini, traduce automaticamente le stringhe in numeri e viceversa,
ma quando si tratta di programmi un pò più complessi, si possono verificare degli errori, quindi consiglio di usare già
da adesso le funzioni val() e str()

Vi ricordate il programmino della scorsa lezione?
andiamo ad aggiustarlo con quanto appreso fino ad'ora:

 

Codice:
Private Sub cmdcalcola_Click()
'dichiarazione variabili
Dim num1 As Integer
Dim num2 As Integer
Dim risultato As Integer

num1 = val(txtnum1.Text)
num2 = val(txtnum2.Text)

risultato = num1 + num2

'output
lblris.Caption = str(risultato)
End Sub


Ecco fatto:
non abbiamo fatto altro che convertire in numeri il contenuto dei due textbox e in stringa il contenuto della variabile risultato.

Andiamo ora a vedere cosa sono i messagbox e gli inputbox

I "messagbox" sono delle normali finestre, tipo quelle che compaiono con windows quando c'è un messaggio di errore:
Facciamo per esempio comparire il messaggio "Ciao mondo!" alla pressione di un command, procediamo così:

 

Codice:
MsgBox "Ciao mondo", vbInformation, "MESSAGGIO"


dovremmo ottenere questo risultato:

 


la sintassi è la seguente:

msgbox è il nome dell'istruzione

"Ciao Mondo" é il messaggio da far comparire nel msgbox

vbinformation è l'icona da fa comparire nel messaggio, e può essere scritta sia in numeri che in lettere, e può anche contenere i tasti da includere nel messaggio(se non si mette niente vuol dire che comparirà solo il tasto ok). per sapere tutte le costanti delle icone e dei tasti basta andare sul sito della guida in linea al seguente indirizzo: http://msdn2.microsoft.com/it-it/library/zf31e8be(VS.80).aspx .

Se per esempio vogliamo far comparire un messaggio con i tasti "OK" e "ANNULLA" la costante da usare è "vbOKCancel" e se vogliamo usare la costante numerica è "1"e poi mettiamo anche l'icona di prima "vbInformation (la costante numerica è 64)

 

Codice:
msgbox "Ciao mondo!", vbInformation+vbOKCancel,"messaggio"


e il risultato sarà questo:

 


"MESSAGGIO" è il l'intestazione del nostro messaggio.

Da ricordare che le varie parti vanno divise da una virgola.


La Funzione "inputbox" come si capisce permette all'utente di far inserire un dato in input:
Mettiamo il caso che si vuole chiedere il nome dell'utente con un inputbox, si dovrebbe usare ques'istruzione:

 

Codice:
nome=Inputbox("Inserisci il nome", "NOME")



e otterremo il seguente risultato:

 



questa funzione non credo abbia bisogno di ulteriori spiegazioni, anche perchè è simile al msgbox, solo che non si possono mettere ne tasti e ne icone.
Da ricordare che il valore restituito da un inputbox deve essere sempre conservato in una variabile e se si chiede in input un numero si usa la funzione
val(), per esempio se volessimo chiedere l'età si farebbe così:

 

Codice:
età=val(Inputbox("Inserisci l'età", "ETA'"))


Andiamo ora a vedere come gestire una condizione, cioè ad eseguire delle operazioni solo al verificarsi di una certa condizione.
La funzione che ci permette di fare questo è la funzione "if"
Mettiamo il caso che si voglia vedere se l'età inserita da un utente sia maggiore di 18 oppure no, e nel caso vero si faccia
comparire un messaggio affermativo, o nel caso falso un messaggio negativo.

Per prima cosa la sintassi della funzione if è la seguente:

if condizione then
operazioni da eseguire nel caso vero
else
operazioni da eseguire nel caso falso
end if
Quindi il nostro codice sarà:

 

Codice:
If età>17 then
msgbox "L persona è maggiorenne", vbinformation, "MAGGIORENNE"
else
msgbox "La persona è minorenne", vbinformation, "MINORENNE"
end if


da notare che è possibile avere anche if senza il caso else:

 

Codice:
if condizione then
operazioni da eseguire nel caso vero
end if


Mettiamo ora il caso che vogliamo far comparire un messaggio solo se l'utente è maggiorenne, ma ha meno di 30 anni:

 

Codice:
If età>17 and età<30 then
msgbox "La persona è maggiorenne", vbinformation, "MAGGIORENNE"
else
msgbox "La persona è minorenne", vbinformation, "MINORENNE"
end if


Come avete visto ho usato l'operatore logico and, che fa eseguire le operazioni del caso vero solo se entrambe le condizioni sono vere,
andiamo a vedere gli altri operatori logici:
And è usato per la congiunzione
or è usato per la disgiunzione.

E' possibile avere anche più if uno nell'altro (questi if sono detti nidificati)
Facciamo un esempio, usando lo stesso poblema di prima, ma senza l'operatore logico and:

 

Codice:
If età>17 then
if età<30 then
msgbox "La persona è maggiorenne ed ha meno di 30 anni", vbinformation, "MAGGIORENNE"
else
msgbox "La persona è maggiorenne ma ha più di 30 anni", vbinformation, "MAGGIORENNE"
end if
else
msgbox "La persona è minorenne", vbinformation, "MINORENNE"
end if

Condividi
Stats
Voti 0
Voto medio 0
Visite 5375
Visite uniche 4663
Num.Download 0
DownloadNon disponibile.
Spazio Visitatori
Prima di inviare il tuo commento assicurati che:
  • sia in tema con l'articolo e contribuisca alla discussione in corso
  • non abbia contenuti offensivi nei confronti di chicchessia
  • non abbia contenuti che violini le leggi italiane
  • non contenga indirizzi e-mail








Vota Pessimo 1 / 5 Migliorabile 2 / 5 Buono 3 / 5 Interessante 4 / 5 Speciale  5 / 5
Non ci sono commenti.
Tag Cloudmsgbox × funzioni × vb6 × inputbox ×

Advertisement

Iprogrammatori.it
| I contenuti di questo sito sono rilasciati sotto Licenza Creative Commons |