I made a small test project and this code works:
Private Sub btn_DoTransaction_Click
Log("Wait")
btn_DoTransaction.Background = cdClick
btn_DoTransaction.TextColor = tColorClick
Sleep(1000)
btn_DoTransaction.Background = cdRelease
btn_DoTransaction.TextColor = tColorRelease
Log("Done")
' HideAllPages
' ShowTransactionPage
End Sub
Be aware that if the user clicks on the button before the second is passed the code will be executed once more.
The logs are just there to see that the program holds for 1 second.