ciao!
sicuramente sbaglio qualcosa perche' l'applicazione mi si blocca su alcuni controlli.
prima di tutto non so' se s possono definire più variabili all'interno di una select case, poi non sò se ho sistemato bene gli annidamenti; qui di seguito c'è il codice che ho utilizzato:
Private Sub Panel1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Panel1.Click
Dim risultato As Integer
Dim ris As String
Select Case Val(Peso.Text) And Val(Altezza.Text)
Case Val(Peso.Text) < 30
MsgBox("Il valore relativo al peso è eccessivamente piccolo!", MsgBoxStyle.Exclamation)
Case Val(Peso.Text) > 250
MsgBox("Il valore relativo al peso è eccessivamente grande!", MsgBoxStyle.Exclamation)
Case Val(Altezza.Text) < 1.2
MsgBox("Il valore relativo all'altezza è eccessivamente piccolo!", MsgBoxStyle.Exclamation)
Case Val(Altezza.Text) > 2.3
MsgBox("Il valore relativo all'altezza è eccessivamente grande!", MsgBoxStyle.Exclamation)
Case Val(Peso.Text) < 30 And Val(Altezza.Text) < 1.2
MsgBox("I valori relativi al peso e all'altezza sono eccessivamente piccoli!", MsgBoxStyle.Exclamation)
Case Val(Peso.Text) > 250 And Val(Altezza.Text) > 2.2
MsgBox("I valori relativi al peso e all'altezza sono eccessivamente grandi!", MsgBoxStyle.Exclamation)
Case Val(Peso.Text) < 30 And Val(Altezza.Text) > 2.2
MsgBox("Il valore relativo al peso è troppo piccolo e quello relativo all'altezza è eccessivamente grande!", MsgBoxStyle.Exclamation)
Case Val(Peso.Text) > 250 And Val(Altezza.Text) < 1.2
MsgBox("Il valore relativo al peso è troppo grande e quello relativo all'altezza è eccessivamente piccolo!", MsgBoxStyle.Exclamation)
Case Val(Peso.Text) = "" And Val(Altezza.Text) <> ""
MsgBox("Inserisci il peso!", MsgBoxStyle.Exclamation)
Case Val(Peso.Text) <> "" And Val(Altezza.Text) = ""
MsgBox("Inserisci l'altezza!", MsgBoxStyle.Exclamation)
Case Else
risultato = (Val(Peso.Text) / (Val(Altezza.Text) * Val(Altezza.Text)))
ris = risultato
Select Case risultato
Case Is < 18.5
RisultatoIMC.Text = "il tuo IMC è: " + ris & vbCrLf & "ATTENZIONE!" & vbCrLf & "Sei sottopeso"
Case 18.6 To 25
RisultatoIMC.Text = "il tuo IMC è: " + ris & vbCrLf & "Sei normopeso"
Case 25.1 To 30
RisultatoIMC.Text = "il tuo IMC è: " + ris & vbCrLf & "Sei sovrappeso"
Case 30.1 To 40
RisultatoIMC.Text = "il tuo IMC è: " + ris & vbCrLf & "ATTENZIONE!" & vbCrLf & "Sei obeso"
Case Is > 40.1
RisultatoIMC.Text = "il tuo IMC è: " + ris & vbCrLf & "ATTENZIONE!" & vbCrLf & "Sei gravemente obeso"
End Select
End select
End Sub
grazie ciao

Rispondi quotando