Impedire che cliccando su un tasto della tastiera si produca più volte il medesimo effetto
Da Gambas-it.org - Wikipedia.
Versione del 6 gen 2022 alle 12:11 di Vuott (Discussione | contributi)
Sappiamo che, utilizzando l'Evento "_KeyPress()", allo scatenarsi di tale evento un comando presente nelle sua routine si scatena ripetutamente sino a quando il tasto non verrà rilasciato.
Per ovviare a questo problema, e quindi per far produrre solo una volta l'effetto di quanto previsto nella routine dell'Evento "_KeyPress()", possiamo adottare un codice come il seguente, che ingloba il codice fondamentale - presente nell'Evento "_KeyPress()" - all'interno della procedura condizionale "IF":
Private status As Byte Public Sub Form_KeyPress() If status == 0 Then Print "Produzione effetto" status = 1 Endif End Public Sub Form_KeyRelease() Print "Tasto rilasciato" status = 0 End
oppure quest'altro analogo, facendo uscire il controllo dalla routine dell'Evento "_KeyPress()" nel caso di verifica della condizione posta con "IF":
Private status As Byte Public Sub Form_KeyPress() If status == 1 Then Return Print "Produzione effetto" status = 1 End Public Sub Form_KeyRelease() Print "Tasto rilasciato" status = 0 End