Autore Topic: Tastiera virtuale touch screen  (Letto 1333 volte)

Offline akrobaticone

  • Gran Maestro dei Gamberi
  • *****
  • Post: 983
    • Mostra profilo
Tastiera virtuale touch screen
« il: 11 Gennaio 2013, 11:08:20 »
Sto giocando con un panel PC con touch screen e sto scrivendo un programmino in Gambas3.
Ho necessità di inserire alcuni codici alfanumerici, per fare questo avrei bisogno di una tastiera virtuale sullo schermo
Come posso fare con Gambas?

Grazie
"e il naufragar m'è dolce in questo mar"

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Tastiera virtuale touch screen
« Risposta #1 il: 11 Gennaio 2013, 11:59:54 »
...avrei bisogno di una tastiera virtuale sullo schermo

Se non intendi necessariamente crearti una tastierina, ma utilizzarne una già "pronta", potresti usare ad esempio: onboard.


C'è anche un riferimento qui nel forum a quella tastierina virtuale onboard:
http://www.gambas-it.org/smf/index.php?topic=1923.0
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.273
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: Tastiera virtuale touch screen
« Risposta #2 il: 12 Gennaio 2013, 11:33:26 »
Siccome l'argomento interessa anche a me, ho cercato di creare una tastiera virtuale, da usare appunto con un touch screen, usando la funzione del componente gb.desktop SendKey(), ma ho incontrato subito delle difficoltà:

1) Se la tastiera e' inserita in una form a se, il form su cui si devono digitare i caratteri perde il focus e quindi i 'segnali' SendKey vanno persi nel vuoto

2) Inviando ripetutamente il carattere ">" (maggiore) con la funzione Desktop.SendKey(">"), il primo invio mi visualizza il carattere corretto, dal secondo in poi mi visualizza un punto  ??? :rolleyes:

Sul secondo punto chiedevo a qualcuno di voi se puo' fare la prova con l'esempio allegato...  :ciao: :ciao:

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Tastiera virtuale touch screen
« Risposta #3 il: 12 Gennaio 2013, 16:02:27 »
1) Se la tastiera e' inserita in una form a se, il form su cui si devono digitare i caratteri perde il focus e quindi i 'segnali' SendKey vanno persi nel vuoto

Forse per questo hai dovuto creare ad hoc il tasto virtuale CTast1 ?
Ho visto, infatti, che tu hai previsto nella classe FTest anche un Button2 per la stampa nella TextEdit del carattere > . Io ho posto il Button2 sul Form FTest un Button2 per un test. Cliccandoci sopra, però, non viene scritto niente nella TextEdit. Ho risolto imponendo ovviamente il Focus alla TextEdit prima della funzione .SendKeys:  :-\
Codice: gambas [Seleziona]

Public Sub Button2_Click()

     TextEdit1.SetFocus

  Desktop.SendKeys(">")

End

Quindi applicando ciò per analogia al problema da te posto....  :-X


2) Inviando ripetutamente il carattere ">" (maggiore) con la funzione Desktop.SendKey(">"), il primo invio mi visualizza il carattere corretto, dal secondo in poi mi visualizza un punto

A me questo fenomeno non accade in nessun caso..  :-\
« Ultima modifica: 12 Gennaio 2013, 17:57:47 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.273
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: Tastiera virtuale touch screen
« Risposta #4 il: 12 Gennaio 2013, 20:11:02 »
he no cosi' non vale  :nono:    :rotfl:

hai provato a posizionarti con il cursore sopra la textarea e poi a cliccare sul mio button?

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Tastiera virtuale touch screen
« Risposta #5 il: 13 Gennaio 2013, 00:06:58 »
hai provato a posizionarti con il cursore sopra la textarea e poi a cliccare sul mio button?

Non so se ti riferisci al primo problema da te posto. In caso affermativo, sì, certo, l'intoppo esiste, se non c'è il focus.
Ecco perché avevo suggerito quella strategia (...alla quale - ne sono sicurissimo - avevi già pensato anche tu).  :-\
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.273
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: Tastiera virtuale touch screen
« Risposta #6 il: 13 Gennaio 2013, 00:54:41 »
Hai provato ad usare la 'tastiera' ? (button 'Tastiera' dell'esempio)?

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Tastiera virtuale touch screen
« Risposta #7 il: 13 Gennaio 2013, 19:39:27 »
Hai provato ad usare la 'tastiera' ? (button 'Tastiera' dell'esempio)?

Sì... però devo dire che non avendo uno schermo "al tatto", ho usato per i test il mouse...  :-X
...fa lo stesso ?  :donkey:
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »