Autore Topic: [Risolto] Approfondimenti sui controlli keypress e lostfocus  (Letto 520 volte)

Offline Franco_da_vc

  • Grande Gambero
  • ***
  • Post: 215
  • Non è mai troppo tardi!
    • Mostra profilo
Ciao amici di forum Gambas,

Sto rivedendo il codice che ho scritto per il mio programma bolle e siccome sono proliferate le diversità tra un fornitore e l'altro ho dovuto aggiungere alcune alcune classi TextBox da far usare in più per un fornitore, questo mi ha incasinato molto nei rimandi da una classe all'altra essendo diverso per i vari fornitori.

Analizzando il codice passo a passo mi sono accorto che l'uscita da una classe con l'evento KeyPress  questa mi va inevitabilmente a finire nell'evento LostFocus anche esso descritto.

Nel mio progetto però avevo descritto i due eventi per poter uscire dalle classi sia con i tasti "invio" e "Tab" che direttamente in grafica cliccando al di fuori dell'oggetto associato alla classe; questi due eventi sembra però che interferisco tra di essi.

Che ne dite? Avreste dei consigli da darmi?

Ho poi un altro dubbio da esporvi, ma questo ve lo scrivero in un altro topic.

Ringrazio tutti per il vostro aiuto!

Bye by AFo
« Ultima modifica: 14 Marzo 2020, 12:03:33 da Franco_da_vc »
Bye by Afo

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Approfndimenti sui controlli keypress e lostfocus
« Risposta #1 il: 07 Marzo 2020, 16:21:18 »
Tutte le volte che premiamo un tasto solleviamo l'evento KeyPress() anche con Tab (Ctrl o Alt ecc.) quindi devi tenerne conto.
Non so come hai organizzato il tutto forse potresti usare dei booleani a livello di classe per evitare il ripetersi del codice, però devi essere sicuro di poterli ripristinare.
Per esempio:
Codice: [Seleziona]
Private $bTextBox1 As Boolean

Public Sub TextBox1_KeyPress()

  If $bTextBox1 Then Return
  Print "TextBox1_KeyPress()"
  $bTextBox1 = True

End

Public Sub TextBox1_LostFocus()

  $bTextBox1 = False

End

La cosa migliore è evitare di far fare la stessa cosa a due eventi diversi o a un evento che si può ripetere accidentalmente.

 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Franco_da_vc

  • Grande Gambero
  • ***
  • Post: 215
  • Non è mai troppo tardi!
    • Mostra profilo
Re:Approfondimenti sui controlli keypress e lostfocus
« Risposta #2 il: 14 Marzo 2020, 12:02:47 »
E' vero Gianluigi,

I due eventi interferivano, ma sto pensando che il lostfocus sia anche inutile, dovrò sperimentare un po di più nel mio prototipo, comunque ora daro inizio al secondo topic perché ho un altro dubbio sul mio codice.

Grazie
Bye by Afo