Select Case FMain.TipoBll
Case 1
If PosLavori = 0 Then
ValuePrezzoUNorm.SetFocus
Endif
ButtonConf.Background = &00FF00
ButtonConf.Enabled = True
ButtonConf.SetFocus
Case 2
TextScontrNum.SetFocus
Case 3
TextCliente.SetFocus
End Select
Case 1
If PosLavori = 0 Then
ValuePrezzoUNorm.SetFocus
Endif
ButtonConf.Background = &00FF00
ButtonConf.Enabled = True
ButtonConf.SetFocus
... forza la routine chiamandola direttamente ecc.
CitazioneCase 1
If PosLavori = 0 Then
ValuePrezzoUNorm.SetFocus
Endif
ButtonConf.Background = &00FF00
ButtonConf.Enabled = True
ButtonConf.SetFocus
Come è possibile dare due SetFocus differenti nella stessa istruzione?
Prova a inserire uno Stop nel codice e a vedere/seguire il comportamento...
Eventualmente cambia l'avvio della routine setfocus su altro
Vedi se inserisci un Wait e funziona, forza la routine chiamandola direttamente ecc.
:ciao:
Il ragionamento che avevo impostato era: dopo essere entra nel Case 1 se PosLavori è uguale a 0 il programma deve eseguire il primo SetFocus, mentre per valori di PosLavori diversi si sarebbe passato all'esecuzione delle linee sotto la IF incontrando il secondo SetFocus ed agendo di conseguenza.
Succede che per PosLavori=0 viene eseguita correttamente la IF, ma il controllo non esce dal CASE (come io pensavo) e continua nelle righe sottostanti andando ad eseguire il secondo SetFocus
Succede che per PosLavori=0 viene eseguita correttamente la IF, ma il controllo non esce dal CASE (come io pensavo) e continua nelle righe sottostanti andando ad eseguire il secondo SetFocus; in effetti però, non ho inserito il Wait, pensi che questo possa essere il problema.
Comenque ti ringrazio Gianluigi, sei sempre solerte e proattivo come tuo solito.
Ciao Franco,mi scuso, ma non ho fatto caso che lanci l'evento SetFocus per un pulsante.
Ma non tutti i controlli hanno l'evento SetFocus ad esempio il Button non lo ha.
Visto che ho fatto confusione, ho pensato di allegare un esempio, può essere utile?