Discussione:
intercettare il tasto Canc
(troppo vecchio per rispondere)
Access
2007-08-07 13:29:40 UTC
Permalink
Buonasera a tutti.

Qualcuni mi sa indicare il codice relativo al tasto canc
--
Ciao
Access
Domenico
2007-08-07 14:14:54 UTC
Permalink
vbKeyDelete

Ciao,
Domenico.
Post by Access
Buonasera a tutti.
Qualcuni mi sa indicare il codice relativo al tasto canc
--
Ciao
Access
Access
2007-08-07 15:20:41 UTC
Permalink
Ciao Domeico,
Post by Domenico
vbKeyDelete
Grazie, non è che conosci anche il relativo valore Ascii?

Grazie ancora
--
Ciao
Access
PAOLO
2007-08-08 05:25:48 UTC
Permalink
se incolli in un form il codice sotto qualsiasi tasto tu prema ti ritorna il
valore ascii dello stesso

Private Sub Form_Load()
KeyPreview = True
End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
MsgBox KeyCode
End Sub

ciao
Paolo
Post by Access
Ciao Domeico,
Post by Domenico
vbKeyDelete
Grazie, non è che conosci anche il relativo valore Ascii?
Grazie ancora
--
Ciao
Access
Access
2007-08-08 10:31:13 UTC
Permalink
Ciao PAOLO,
Post by PAOLO
se incolli in un form il codice sotto qualsiasi tasto tu prema ti ritorna
il valore ascii dello stesso
Private Sub Form_Load()
KeyPreview = True
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
MsgBox KeyCode
End Sub
Eccezionale, funziona alla grande.

Grazie infinite.
--
Ciao
Access
Fabio
2007-08-08 12:04:07 UTC
Permalink
Post by Access
Post by PAOLO
se incolli in un form il codice sotto qualsiasi tasto tu prema ti ritorna
il valore ascii dello stesso
Private Sub Form_Load()
KeyPreview = True
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
MsgBox KeyCode
End Sub
Eccezionale, funziona alla grande.
Peccato che l'evento KeyDown NON gestisce i codici ASCII ma i codici del
tasto fisico della tastiera.
Il codice ASCII è gestito da KeyPress.

Ciao
Access
2007-08-08 12:54:22 UTC
Permalink
ciao fabio,
Post by Fabio
Post by Access
Post by PAOLO
se incolli in un form il codice sotto qualsiasi tasto tu prema ti
ritorna il valore ascii dello stesso
Private Sub Form_Load()
KeyPreview = True
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
MsgBox KeyCode
End Sub
Eccezionale, funziona alla grande.
Peccato che l'evento KeyDown NON gestisce i codici ASCII ma i codici del
tasto fisico della tastiera.
Il codice ASCII è gestito da KeyPress.
Onde per cui, che devo fa?
--
Ciao
Access
Domenico
2007-08-08 17:32:52 UTC
Permalink
Cerchi su google la tabella dei codici ascii :-)

Ciao,
Domenico.
Post by Access
ciao fabio,
Post by Fabio
Post by Access
Post by PAOLO
se incolli in un form il codice sotto qualsiasi tasto tu prema ti
ritorna il valore ascii dello stesso
Private Sub Form_Load()
KeyPreview = True
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
MsgBox KeyCode
End Sub
Eccezionale, funziona alla grande.
Peccato che l'evento KeyDown NON gestisce i codici ASCII ma i codici del
tasto fisico della tastiera.
Il codice ASCII è gestito da KeyPress.
Onde per cui, che devo fa?
--
Ciao
Access
Fabio
2007-08-09 09:34:20 UTC
Permalink
Post by Access
Post by Fabio
Peccato che l'evento KeyDown NON gestisce i codici ASCII ma i codici del
tasto fisico della tastiera.
Il codice ASCII è gestito da KeyPress.
Onde per cui, che devo fa?
Non so, dipende da cosa devi fare.
Voi sapere/gestire il codice ascii? Usa l'evento KeyPress.
Vuoi sapere/gestire il codice del tasto? Usa gli eventi KeyDown/KeyUp.

Ciao
Access
2007-08-09 17:02:53 UTC
Permalink
ciao fabio,
Post by Fabio
Post by Access
Post by Fabio
Peccato che l'evento KeyDown NON gestisce i codici ASCII ma i codici del
tasto fisico della tastiera.
Il codice ASCII è gestito da KeyPress.
Onde per cui, che devo fa?
Non so, dipende da cosa devi fare.
Voi sapere/gestire il codice ascii? Usa l'evento KeyPress.
Vuoi sapere/gestire il codice del tasto? Usa gli eventi KeyDown/KeyUp.
Io volevo scatenare l'evento KeyPress quando veniva premuto il tasto canc.

Che faccio?

ho provato con

if keyAscii = 46 then KeyAscii = 0

ma non succede nulla ed il tasto cancella comunque.

Invece facendo la stessa cosa con il BackSpace la pressio del tasto viene
intercettata.

if KeyAscii = 8 then KeyAscii = 0

Il codice 46 l'ho ricavato mettendo in atto quanto indicato da Paolo.
Stessa cosa per il backSpace.

Per cui come mai per il bacSpace tutto funge mentre per il tasto canc no?

Grazie infinite per l'interessamento.
--
Ciao
Access
Fabio
2007-08-09 18:15:02 UTC
Permalink
Post by Access
Io volevo scatenare l'evento KeyPress quando veniva premuto il tasto canc.
Che faccio?
ho provato con
if keyAscii = 46 then KeyAscii = 0
ma non succede nulla ed il tasto cancella comunque.
Invece facendo la stessa cosa con il BackSpace la pressio del tasto viene
intercettata.
if KeyAscii = 8 then KeyAscii = 0
Il codice 46 l'ho ricavato mettendo in atto quanto indicato da Paolo.
Stessa cosa per il backSpace.
Te lo ripeto: l'evento KeyDown NON lavora sui codici ascii, quindi 46 è il
codice HW del tasto.
Se tu premessi ad es "1" nella tastiera e "1" nel tastierino numerico
otterresti dei codici diversi.
Post by Access
Per cui come mai per il bacSpace tutto funge mentre per il tasto canc no?
Evidentemente (non ricordo) non esiste un codice ascii per il canc, come non
esiste un codice ascii per le frecce.
Se ti serve proprio il canc in questo caso devi per forza gestirlo o sul
KeyDown o sul KeyUp, considerando che non è il codice ascii ma il codice hw.
Inoltre non usare mai i "magic numbers", premi F2 e cerca KeyCodeConstants,
il canc è vbKeyDelete.

Ciao
Access
2007-08-09 18:47:05 UTC
Permalink
ciao Fabio,
Post by Fabio
Post by Access
Io volevo scatenare l'evento KeyPress quando veniva premuto il tasto canc.
Che faccio?
ho provato con
if keyAscii = 46 then KeyAscii = 0
ma non succede nulla ed il tasto cancella comunque.
Invece facendo la stessa cosa con il BackSpace la pressio del tasto viene
intercettata.
if KeyAscii = 8 then KeyAscii = 0
Il codice 46 l'ho ricavato mettendo in atto quanto indicato da Paolo.
Stessa cosa per il backSpace.
Te lo ripeto: l'evento KeyDown NON lavora sui codici ascii, quindi 46 è il
codice HW del tasto.
Se tu premessi ad es "1" nella tastiera e "1" nel tastierino numerico
otterresti dei codici diversi.
Post by Access
Per cui come mai per il bacSpace tutto funge mentre per il tasto canc no?
Evidentemente (non ricordo) non esiste un codice ascii per il canc, come
non esiste un codice ascii per le frecce.
Se ti serve proprio il canc in questo caso devi per forza gestirlo o sul
KeyDown o sul KeyUp, considerando che non è il codice ascii ma il codice hw.
Inoltre non usare mai i "magic numbers", premi F2 e cerca
KeyCodeConstants, il canc è vbKeyDelete.
OK, sei stato troppo gentile.

Grazie 1000000 per la spiegazione.
--
Ciao
Access
Continua a leggere su narkive:
Loading...