Ciao caro,
05/05/2025 - antocuomo ha scritto:
ho bisogno di fare delle azioni per cui ho necessità di catturare l'evento stesso.
Le ho provate tutte ma non ho scoperto il modo per farlo.
Esiste un modo per farlo che a me sfugge?
eh... non riesci a catturarlo proprio perchè ti sfugge, è più veloce di te ? ;-)
A parte gli scherzi...
gli eventi della TextBox, come per esempio su change, after update, etc... , si attivano solo se è direttamente l'utente a manipolare la Textbox.
Una soluzione possibile è quella di spostare il codice eseguito dall'evento after update della TexBox, in una routine separata.
Ma potresti anche richiamare da codice direttamente la routine evento after update ... personalmente preferisco tenere separate le cose...
Facciamo un esempio, poniamo di avere :
- la TextBox di nome : TextBoxMyDate
- l'evento su after update: Private Sub TextBoxMyDate_AfterUpdate()
- una routine per i calcoli : Private Sub MyTextBoxMyDateCalculate()
Option Compare Database
Option Explicit
' TEXTBOX AFTER UPDATE EVENT
Private Sub TextBoxMyDate_AfterUpdate()
' Execution of calculations
Call MyTextBoxMyDateCalculate
End Sub
' TEXTBOX EXECUTIONS OF CALCULATIONS
Private Sub MyTextBoxMyDateCalculate()
' Here perform the calculations and operations
' that were performed in the Textbox after update event
'.
'..
'....
End Sub
'----------------------------------------------------------------------------------------------------------
' ADESSO NEL FLUSSO DEL CODICE VAI A RICHIAMARE I CALCOLI E LE OPERAZIONI
' DA ESEGUIRE COME SE FOSSE STATO L'UTENTE AD AVER MANIPOLATO LA TEXTBOX CHE ATTIVEREBBE L'EVENTO AFTER UPDATE
' YOUR CODE
Private Sub MyCode()
' Set textbox new value
Me.TextBoxMyDate.Value = Date
' Invoke texbox execution of calculations
Call MyTextBoxMyDateCalculate
End Sub
'----------------------------------------------------------------------------------------------------------
' ALTRO ESEMPIO SULL'EVENTO LOAD DELLA FORM
' FORM LOAD
Private Sub Form_Load()
' Set textbox new value
Me.TextBoxMyDate.Value = Date
' Invoke texbox execution of calculations
Call MyTextBoxMyDateCalculate
End Sub
'----------------------------------------------------------------------------------------------------------
' Etc... Etc...
.
Per esempio con questo sistema puoi anche suddividere le operazioni da eseguire solo se è l'utente a manipolare la TEXTBOX
e solo le operazioni da eseguire se la TexBox viene manipolata direttamente da CODICE
Insomma... è flessibile e ti lascia diverse possibilità di azioni da compiere potendo stabilire chi e cosa ha manipolato la textbox