Ho un problema con listbox, in pratica in modifica devo poter attivare una funzione alla pressione del tasto F3 sulla cella
Ho provato mettendo nell’evento CellKeyDown il codice :
select case Asc(Key)
case 63238
’ hai premuto F3
select case column
case 0
' invoco la lista del piano dei conti
Me.ActiveCell.Text= lookupwindows.Apertura("codice","descrizione","conti")
if Me.ActiveCell.Text = "!nulla" then
Me.ActiveCell.Text = ""
else
listbox1.cell(row,2) = Cercafield("codice","descrizione","conti",Me.ActiveCell.Text)
' return true
exit Function
end if
case 1
' invoco la lista dei clientifornitori
Me.ActiveCell.Text= lookupwindows.Apertura("codice","ragionesociale","clientifornitori")
if Me.ActiveCell.Text = "!nulla" then
Me.ActiveCell.Text = ""
else
listbox1.cell(row,2) = Cercafield("codice","ragionesociale","conti",Me.ActiveCell.Text)
' return true
exit Function
end if
end select
case 13, 10
…
end select
Nulla da fare non ne vuole sapere di funzionare, anzi premendo F3 emette un beep e non viene elaborata la funzione.
Chi mi pu aiutare ?
Grassie
cos a prima vista mi sa che il cellKeydown funziona solo se la cella di tipo edit …
fino a li c’ero arrivato pure io. per strano il fatto che i tasti funzione non li digerisca mentre un fieldbox invece si…
I tasti funzione sono una bestia a parte dagli altri tasti.
Nell evento cellKeyDown, prova con
if Keyboard.AsyncKeyDown(&h63) then
// F3 premuto
end if
Lelenco dei codici per i tasti lo trovi nella documentazione di Xojo per il modulo Keyboard.
Avevo provato anche con quel metodo ma nessun successo.
Ho provato a scaricare anche i vari componenti (plugin di terze parti) relativo a listbox ma nulla, nessun componente che digerisce i tasti F
Quello che mi suona strano è che sono riuscito a creare un containercontrol per il lookup di database e finestra modal per la scelta da una listbox dei dati partendo dal tasto F3 di una casella editfield e funziona.
per ora uso il tasto TAB (9) sulla cella da modificare per richiamare la lista (sempre un lookup di db con finestra di selezione) oppure semplicemente per richiamare il completamento auto del rigo di listbox, ma TAB mi servirebbe per spostarmi da una editcell ad un’altra anche perché mi sembra più logico in questo modo.
devo per forza di cose utilizzare le specifiche SAA/IBM quindi F3 per la lista F4 per l’edit etc.
Ti ringrazio comunque per l’interessamento.