Differenze tra le versioni di "Impedire, mentre si tiene premuto un tasto della tastiera, si produca il medesimo effetto cliccando su un altro tasto"

Da Gambas-it.org - Wikipedia.
Riga 1: Riga 1:
Il caso è quello in cui si intende evitare che, mentre si tiene premuto un tasto prima che sia stato rilasciato per la produzione di un effetto mediante l'evento ''_KeyRelease()'', si intende impedire che  - dopo aver eventualmente premuto un altro tasto - possa produrre il medesimo efetto anch'esso con l'evento ''_KeyRelease()'' .
+
Il caso è quello in cui si intende evitare che, mentre si tiene premuto un tasto prima che sia stato rilasciato per la produzione di un effetto mediante l'Evento "_KeyRelease()", si intende impedire che  - dopo aver eventualmente premuto un altro tasto - possa produrre il medesimo efetto anch'esso con l'Evento "_KeyRelease()" .
 
 
  
 
Mostriamo un codice per ottenere quella inibizione. In particolare i tasti della tastiera, presi in considerazione, sono il tasto della freccia a sinistra e quello della freccia a destra. L'obiettivo è quello per cui, sin tanto che si tiene premuto uno dei due tasti, premendo eventualmente l'altro, non si produce alcun effetto.
 
Mostriamo un codice per ottenere quella inibizione. In particolare i tasti della tastiera, presi in considerazione, sono il tasto della freccia a sinistra e quello della freccia a destra. L'obiettivo è quello per cui, sin tanto che si tiene premuto uno dei due tasti, premendo eventualmente l'altro, non si produce alcun effetto.
Riga 12: Riga 11:
 
    
 
    
 
  '''End'''
 
  '''End'''
 
 
   
 
   
 
  '''Public''' Sub Form_KeyRelease()
 
  '''Public''' Sub Form_KeyRelease()

Versione delle 12:13, 6 gen 2022

Il caso è quello in cui si intende evitare che, mentre si tiene premuto un tasto prima che sia stato rilasciato per la produzione di un effetto mediante l'Evento "_KeyRelease()", si intende impedire che - dopo aver eventualmente premuto un altro tasto - possa produrre il medesimo efetto anch'esso con l'Evento "_KeyRelease()" .

Mostriamo un codice per ottenere quella inibizione. In particolare i tasti della tastiera, presi in considerazione, sono il tasto della freccia a sinistra e quello della freccia a destra. L'obiettivo è quello per cui, sin tanto che si tiene premuto uno dei due tasti, premendo eventualmente l'altro, non si produce alcun effetto.

Private status As Integer


Public Sub Form_KeyPress()
 
 If status > 0 Then Return
 status = Key.Code
 
End

Public Sub Form_KeyRelease()
 
 If Key.Code <> status Then Return
 
 Select Case Key.Code
   Case Key.Right
     Print "Freccia a destra"
   Case Key.Left
     Print "Freccia a sinistra"
 End Select
 
 status = 0
 
End