Italian problemi col message box

3394509365

Active Member
Licensed User
Longtime User
ho questa parte di codice:


B4X:
If Result2 = DialogResponse.POSITIVE Then 'Return
        
       
            'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
            'xxxxxxxxxxxxxxxxxxxxx Single / Multiple pages""xxxxxxxxxxxxxxxxx
            'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
            Dim Sce As String' risposta alla scelta
            Dim options As B4XListTemplate
            Dim Multi As  Boolean
            
            
            options.Initialize
            options.Options = Array("Single page?","Multiple pages?")
            options.AllowMultiSelection = False
'     
            Wait For (dialog.ShowTemplate(options, "OK", "", "CANCEL")) Complete (Result As Int)
''     
            Sce=options.SelectedItem   'options.SelectedItem per scelte multiple
'             
            Select Case  Sce
                Case  "Single page?"  '0'"Single page"
                    Multi = False
                Case "Multiple pages?"' 1'Multiple pages?'
                    Multi = True
                Case Else
                    
                    Return
            End Select
    
    
            'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
            'xxxxxxxxxxxxxxxxxxxxx Numero pagina P1 P2 ecc xxxxxxxxxxxxxxxxxx
            'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    
     If Multi = True Then  ' multi
    
            Dim NumPagInputBox As B4XInputTemplate
            NumPagInputBox.Initialize
            NumPagInputBox.RegexPattern = ".+" 'require at least one character  ' almeno un carattere
            NumPagInputBox.ConfigureForNumbers(False, False) 
                
            
            dialog.Title = "Enter a page number >0 AND <100"
    
            Wait For (dialog.ShowTemplate(NumPagInputBox, "OK", "", "CANCEL")) Complete (Result As Int)
        
            If Result = xui.DialogResponse_Positive Then
                    
                'mi da il num della pagina inserito
                    Dim Pag As Int = NumPagInputBox.Text            '
                If Pag <1 Or Pag >=100 Then
                        MsgboxAsync("Incorrect number","ATTENTION")
                        Return
                End If
                    
            Else
                Return
                
            End If       
                    
                    
        Else' single
                
                
        End If

' dopo che chiedo di introdurre un numero da 1 a 99 ma se l' input è errato, vorrei che venga chiesto di riprovare ancora, senza uscire col return da tutto..
 

advansis

Active Member
Licensed User
Longtime User
Metti il codice da ripetere all'interno di un blocco Do While ... Loop. Per esempio...

B4X:
Dim ok as boolean=false
while ok=false do
    ...
   
    If Pag <1 Or Pag >=100 Then
        MsgboxAsync("Incorrect number","ATTENTION")
    else
        ok=true
    End If
   ...
loop
 
Top