Visualizzazione dei risultati da 1 a 9 su 9

Discussione: SetFocus con Access

  1. #1

    SetFocus con Access

    Per cortesia un aiuto.

    Ho impostato un campo per un inserimento di un Cod. avviam. postale (Cap) formato da cinque caratteri numerici con un msg di errore se i caratteri sono minori o maggiori di 5. Fin qui tutto bene ma quando si tratta di rendere attivo il set focus alla presenza dell'errore il cursore pur cancellando come da sintassi il cursore si sposta automaticamente su altri campi testo. E si che attuando il debug della sintassi, viene riconosciuto il setfocus. Dove avviene l'inconveniente? Devo disabilitare qualche opzione delle proprietà?

    Grazie a tutti e ciao Giorgio

    La sintassi:

    Private Sub Cap_lostFocus()

    If Len(Me.Cap <> 5) Then
    MsgBox "Errore di inserimento" ecc ecc
    Me.Cap = ""
    Me.Cap.SetFocus
    End If
    End Sub

  2. #2
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Secondo me prima c'è un problema logico.
    Se ad un evento LostFocus di un controllo associ un SetFocus sullo stesso controllo, come fai ad uscire? Hai creato l'equivalente di un loop...

  3. #3
    Utente di HTML.it L'avatar di seclimar
    Registrato dal
    Sep 2002
    Messaggi
    21,042
    [supersaibal]Originariamente inviato da longline
    Secondo me prima c'è un problema logico.
    Se ad un evento LostFocus di un controllo associ un SetFocus sullo stesso controllo, come fai ad uscire? Hai creato l'equivalente di un loop... [/supersaibal]
    no..
    ha messo un IF!

    fai una cosa...
    vai passo passo!
    metti un break point sull'IF!
    poi vai passo passo con F8
    fino alla fine della funzione!

    se percaso entra in gioco un altro pezzo di codice lo vedi subito .. poiche' continuerai ad essere in modalità "passo passo"

  4. #4
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    [supersaibal]Originariamente inviato da seclimar
    no..
    ha messo un IF!
    [/supersaibal]
    Ops, ho letto troppo in fretta!

  5. #5

    Set focus non funge

    Il break point sull'IF fino alla fine della funzione non rileva nessun altro codice, inoltre entra anche nel set focus, ma nella pratica reale dopo il messaggio di errore di inserimento il campo perde il setfocus e si attiva al cliccaggio su altri campi di inserimento oppure se uso il tasto tab sul campo con sequenza successiva.

    Inoltre cortesemente mi spieghereste meglio questo passaggio?
    Secondo me prima c'è un problema logico.
    Se ad un evento LostFocus di un controllo associ un SetFocus sullo stesso controllo, come fai ad uscire? Hai creato l'equivalente di un loop...

    Grazie a tutti Ciao

  6. #6
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Scusami, il loop non c'è, come correttamente osservava seclimar.
    Ignora la mia frase, è stata una mia fagianata!

    Ho un sospetto...

    Innanzitutto:
    Puoi postare l'intera Sub? Sostituisci il contenuto delle stringhe che non vuoi che leggiamo, ma lascia tutto il codice.

    Quando compare la MsgBox "Errore di inserimento" prova a cliccare su Ok con il mouse per chiuderla, invece di (ad esempio) premere Invio o Esc...

  7. #7

    Dilemma setfocus

    Grazie 1000 ma ho provato in tutti i modi senza risultato. Un bel dilemma

    Ciao Giorgio

  8. #8
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Puoi postare tutta la sub?

  9. #9
    Utente di HTML.it L'avatar di seclimar
    Registrato dal
    Sep 2002
    Messaggi
    21,042
    se vai passo passo....
    arrivi in fondo alla funzione

    end sub
    qua premi ancora F8
    e ritorni alla maschera...
    nel caso invece hai ancora codice .. molto probabilmenente..quest'altro codice e' quello che ti porta via il focus appena settato!

    e' un problema di sequenza e ordine nell'esecuzione degli eventi

    controlla!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.