Newsgroup: it.comp.lang.visual-basic
Titolo: Problema SendKeys

Ciao ragazzi,
    più che un problema è una cosa stupida ;-)...
Per simulare la pressione del tasto tab utilizzo l'istruzione SendKeys
"{TAB}".
Funziona ma la cosa che non capisco è perchè appena viene eseguita
l'istruzione i led della tastiera (Blocco Numeri, Tasti e scorrimento) si
accendono e subito dopo si spengono.
E' capitato anche a voi o sono io sfigato?
Ciao
Mirko

Sul mio PC i led spenti non fanno niente, quelli accesi invece emettono un
quasi impercettibile tremolio.
Mirko ha scritto:


 E' capitato anche a voi o sono io sfigato?
Penso capiti piu` o meno a tutti ma non so dirti di piu` perche'
personalmente ho "radiato" l'uso tale istruzione da un bel pezzo. Potresti
cercare su msdn. Poi se trovi qualcosa di interessante facci sapere. ;-)
--
Ciao.
Maurizio
--------
?SPQR(C)
 X
--------


Per "radiato" intendi dire che hai trovato un'altra soluzione?
Ciao

 Mirko
E' proprio così e dipende dall'hardware della tastiera poichè, dal quel che
ho capito,
l'istruzione SendKeys invia proprio i dati alla tastiera e questa li reinvia
al PC.
A questa affermazione sono giunto perchè ho una tastiera industriale che
ogni volta si
batte un tasto fa un beep, e usando l'istruzione SendKeys la tastiera fa
beep.
Ciao
Sirjo

 Per "radiato" intendi dire che hai trovato un'altra soluzione?
Si`. Piu` o meno. Dipende dai casi, insomma. Tu in che circostanze usi
"SendKeys"?


 "SendKeys"?
Visto che le persone che useranno l'applicativo sono abituate a premere il
tatso invio per spostarsi tra le varie textbox ho fatto cosě:
Private Sub Form_KeyDown(KeyAscii As Integer, Shift As Integer)
    Select Case KeyAscii
        Case 13:
            SendKeys "{TAB}"
    End Select
End Sub
Cosa ne pensi? Come si potrebbe gestire in un altro modo?
Ciao


io e Bepi DBG l'abbiamo affrontato in un altro modo
http://www.geocities.com/fibiafbi/vbsimple/howto/004.htm
se appaiono errori javascript:
http://www.geocities.com/fibiafbi/vbsimple
poi clicca su howto e poi su spostamento di campo
--
Fibia "Sakamoto" FBI
URL: 
www.geocities.com/fibiafbi
E-Mail: 
fibi...@hotmail.com
ICQ UIN 63586057
Membro #25 delle Brigate Takahashi Sez. Sud

 Cosa ne pensi? Come si potrebbe gestire in un altro modo?
L'ho gestito e visto gestire in vari modi ed uno preferito non ce l'ho,
anche perche' generalmente non mi piacciono i cambiamenti all'interfaccia
standard. Ma in questo caso faccio una eccezione perche' effettivamente e`
una cosa spesso richiesta.
Un modo che mi piace abbastanza perche` da` un buon controllo sul codice e`
quello che segue. Spero di non aver dimenticato niente perche' l'ho scritto
in fretta.
Option Explicit
Private m_objCurCtl As Object
Private m_objNxtCtl As Object
Private Sub Control_GotFocus( _
  ByVal ctlCur As Object _
, ByVal ctlNxt As Object _
)
  Set m_objCurCtl = ctlCur
  Set m_objNxtCtl = ctlNxt
  Select Case TypeName(m_objCurCtl)
  Case "TextBox"
    With ctlCur
      .SelStart = 0
      .SelLength = Len(.Text)
    End With
  Case Else
  End Select
End Sub
Private Sub Command1_Click()
  MsgBox "cmd1"
End Sub
Private Sub Command2_Click()
  MsgBox "cmd2"
End Sub
Private Sub Form_Activate()
  Text1_GotFocus
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
  If KeyAscii = 13 Then
    If ActiveControl Is m_objCurCtl Then
      KeyAscii = 0
      m_objNxtCtl.SetFocus
    End If
  End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
  Set m_objCurCtl = Nothing
  Set m_objNxtCtl = Nothing
End Sub
Private Sub Text1_GotFocus()
  Control_GotFocus Text1, Text2
End Sub
Private Sub Text2_GotFocus()
  Control_GotFocus Text2, Text3
End Sub
Private Sub Text3_GotFocus()
  Control_GotFocus Text3, Text4
End Sub
Private Sub Text4_GotFocus()
  Control_GotFocus Text4, Text1
End Sub






il problema è di tutti.......


e ancora peggio.... con WINDOWS 2000 e Service 
Pack1 dopo un poco si blocca la tastiera cosa che non succedeva con altri 
S.O.


basta entrare nel pannello di controllo entrare 
nella configurazione della tastiera, confermare e tutto torna OK.


N.B. il mouse funziona.


 



 End Sub
etc. etc.
Sono un super neofita di VB, che tenta di trasformare i suoi vecchi
programmi realizzati all'università da C/C++ (dos) a VB. (forse è meglio
dire riscrivere in VB) .
Ho usato anch'io questa soluzione, tuttavia se imposto il controllo dei
valori con la proprietà Causes Validation e l'evento Validate quando premo
il tasto return mi sposto sul controllo successivo eludendo la verifica.
Vi risulta???
Infinite grazie .
--
bye
Enos
Per rispondere togliere EXP en...@EXPmclink.it

Prova ad impostare la proprietą KeyPreview della tua form a True
Ciao
Mirko

 Vi risulta???
Si`. E` da poco che studio VB6 e non ho ancora sperimentato tale evento, mi
dispiace.


 Mirko
Fatto!
Tutto Ok
