Autore Topic: [RISOLTO] Associare tasto a bottone  (Letto 2294 volte)

Offline aulin

  • Gambero
  • **
  • Post: 83
    • Mostra profilo
[RISOLTO] Associare tasto a bottone
« il: 04 Ottobre 2010, 10:24:49 »
Se avessi un monitor touch screen e volessi associare un tasto ad un bottone si potrebbe fare?
Vale a dire cliccando sul bottone ottenere lo stesso effetto che se avessi premuto il tasto vero.
« Ultima modifica: 05 Ottobre 2010, 16:13:15 da aulin »

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Associare tasto a bottone
« Risposta #1 il: 04 Ottobre 2010, 12:01:29 »
Se avessi un monitor touch screen e volessi associare un tasto ad un bottone si potrebbe fare?
Vale a dire cliccando sul bottone ottenere lo stesso effetto che se avessi premuto il tasto vero.


 :rolleyes:

Allora tu vuoi associare un tasto del dispositivo a un button di un form o vuoi che un click sul button di un form abbia lo stesso effetto della pressione di un tasto del dispositivo?

Io penso di aver capito che tu vuoi la seconda. In questo caso devi trovare la chiamata di sistema associata a quel tasto e inserirla nella sub click del button. Altrimenti se ci dici cosa fa il tasto ti aiutiamo a "simulare" la stessa cosa.

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #2 il: 04 Ottobre 2010, 15:42:48 »
si può fare qualcosa con

Desktop.SendKeys
credo, ma come dice cesko bisogna prima capire cosa devi realizzare, ovviamente credo che tu intenda realizzare una tastiera a video, ma questa la devi usare per scrivere in  campi presenti nello stesso programma o altrove?

Offline aulin

  • Gambero
  • **
  • Post: 83
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #3 il: 04 Ottobre 2010, 16:48:50 »
L'idea era quella di realizzare un gestore di kiosko. L'utente interagisce col touch screen senza tastiera, esclusivamente tramite la pressione di bottoni che permettono di visualizzare dati. Nella ColumnView riesco a gestire tranquillamente la pagina avanti e pagina indietro per visualizzare dati, ma se volessi cliccare sulla riga i-esima dovrei scendere giu col tasto freccia in giu ( o mouse down ?).
A questo punto dovrei inserire un bottone che simuli il tasto freccia in giu. Se ho ben capito i controlli interni al ColumnView sono riferiti agli item della riga e non riesco ad associare alcun evento per far avanzare la riga premendo un bottone.
Spero di essere stato chiaro.

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #4 il: 04 Ottobre 2010, 16:57:49 »
Move() e Select() mi risulta siano due metodi di ColumnView...

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #5 il: 04 Ottobre 2010, 17:09:13 »
in alternativa

ColumnView1.Current.MoveAfter

ColumnView1.Current.MoveBefore

Offline aulin

  • Gambero
  • **
  • Post: 83
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #6 il: 04 Ottobre 2010, 17:29:35 »
Grazie Surf.
Ho visto che i 2 metodi da te propostie associati al bottone permettono di gestire l'avanzamento di riga nella ColumnView.
Incrociamo le dita.

Offline aulin

  • Gambero
  • **
  • Post: 83
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #7 il: 04 Ottobre 2010, 19:45:56 »
Devo riaprire il messaggio perchè il funzionamento del ColumView.Current.Above / Before è alquanto particolare.
MI scala infatti le righe della CV avanzando si il cursore, ma mettendo poi la riga dove avrebbe dovuto posizionarsi alla prima riga del CV.
Quindii si sposta il cursore verso il basso, ma la riga viene messa all'inizio. Boh !!!!

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #8 il: 04 Ottobre 2010, 21:32:35 »
purtroppo non posso aiutarti più di tanto .. non uso mai le colummview  :-\

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Associare tasto a bottone
« Risposta #9 il: 04 Ottobre 2010, 21:39:46 »
Domanda da bischero: ma l'utente non può usare la barra di scorrimento laterale per far salire/scendere la lista di item?  :-\
Visita il mio sito personale: http://www.leonardomiliani.com

Offline aulin

  • Gambero
  • **
  • Post: 83
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #10 il: 04 Ottobre 2010, 22:41:05 »
Certo che potrebbe, ma siccome ho paginato i dati, questa possibilità è stata esclusa.

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Associare tasto a bottone
« Risposta #11 il: 05 Ottobre 2010, 00:10:17 »
Entro in discussione solo per farti presente una cosa...mouse down, a differenza di quanto mi pare tu abbia capito, non indica il movimento "in basso" di un qualcosa ma indica la pressione di uno dei tasti del mouse. Con questo chiudo la parentesi illustrativa...

Offline aulin

  • Gambero
  • **
  • Post: 83
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #12 il: 05 Ottobre 2010, 11:32:07 »
Ragazzi ho trovato la soluzione e funziona perfettamente, spesso chi cerca trova. C'è solo un piccolo problema. Non riesco a capire cosa effettivamente fanno. C'è qualcuno così cortese da farmi comprendere l'arcano del funzionamento di queste routines??

Codice: [Seleziona]

Public Sub BTN_Su_Click()
 Dim sRiga As String

  ' remove the highlight
  ColumnView1.Current.Selected = False

  ' do the reposition
  If Not ColumnView1.MovePrevious() Then
    ' is done, get the key
    sRiga = ColumnView1.Item.Key

    ' highlight the new item by key
    ColumnView1[sRiga].Selected = True
  Endif

End

Public Sub BTN_Giu_Click()
Dim sRiga As String

  ColumnView1.Current.Selected = False
  If Not ColumnView1.MoveNext() Then
    sRiga = ColumnView1.Item.Key
    ColumnView1[sRiga].Selected = True
  Endif

End


Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Associare tasto a bottone
« Risposta #13 il: 05 Ottobre 2010, 12:51:42 »
In pratica, viene ricercata la riga corrispondente alla ricerca e, quando trovata la rende selezionata (Select).

I metodi di movimenti, in effetti, muovono solo il puntatore interno, ma non quello visibile, che deve essere fatto con il metodo Select.

Questo però è valido per la Single selection, ovvero quando la gridview è impostata in modo da poter selezionare una sola riga per volta. Nel caso i multiselezione, tocca giocare un pò con le cose, ma il concetto resta identico.