Eccomi di nuovo a Voi, grazie a Flash30005 ho praticamente raggiunto il mio scopo, ora veniamo al dunque, ho creato una tastiera virtuale completa dei soli tasti alfabetici, ho creato dei comandi che al clic del pulsante verifichino quale form risulta attivo, intercettino ("captino") il testo già presente nel form stesso prima di digitare il pulsante cliccato ed inviino la lettera che voglio eseguendo questo script:
Private Sub A_Click()
Screen.PreviousControl.SetFocus
If Screen.ActiveControl.Name = "TestoC" Then
SendKeys TestoC & ("A")
End If
If Screen.ActiveControl.Name = "TestoN" Then
SendKeys TestoN & ("A")
End If
End Sub
Uno per ogni lettera avviamente, per il tasto bacspace ho creato questo :
Private Sub DEL_Click()
Screen.PreviousControl.SetFocus
If Screen.ActiveControl.Name = "TestoC" Then
SendKeys TestoC & ("{BS}")
End If
If Screen.ActiveControl.Name = "TestoN" Then
SendKeys TestoN & ("{BS}")
End If
End Sub
e fino a qui tutto ok, il problema sorge con lo spazio, quando genero lo spazio lo scrive regolarmente dopo una lettera ma ne cliccare la lettera successiva il testo captato risulta sempre senza spazi bianchi pertanto prosegue la scrittura ma omette lo spazio, esempio, clicco su d poi su e e mi scrive de, clicco su spazio ed ottendo de(spazio) e fino qui tutto bene, clicco sulla m e mi appare dem.
Significa che lo spazio non viene considerato come un carattere pertanto il comando capta solo le lettere, esiste un modo di far riconoscere lo spazio come carattere? ho avuto la malsana idea di sostituire tutti gli spazi con una underscore ma non è il massimo vedere un de_ma... come cognome.
Grazie in anticipo.