Autore Topic: visualizzare in ComboBox.Popup le righe contenenti i caratteri digitati  (Letto 467 volte)

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Ho una ComboBox contenente una lunga lista di causali; vorrei far sì che a fine digitazione di una stringa di caratteri (click sul triangolino a dx della ComboBox o attraverso la pressione del tasto freccia-giù o Pag-giù), si apra la relativa finestra di popup all'interno della quale siano visibili tutte le causali presenti nella lista, a partire però dalla prima contenente la stringa digitata. Quindi se scrivo in ComboBox.Text "spe" e nella CombBox.List mi ritrovo le seguenti causali:
Citazione
rullino kodacolor da 36 exp.
ruote per divano in ferro
sost.ne scheda elettronica di apertura/chiusura cancello
sost.ne vetro nel carrelo portatelevisore
stampa foto
sviluppo e stampa fotografie varie
tabacco
tagliando auto
teglia in vetro
il click sul triangolino a dx della casella ComboBox, dovrebbe presentare una finestra di popup, contenente le seguenti righe
Citazione
sost.ne scheda elettronica di apertura/chiusura cancello
sost.ne vetro nel carrelo portatelevisore
stampa foto
sviluppo e stampa fotografie varie
tabacco
tagliando auto
teglia in vetro
a partire quindi dalla prima riga della lista contenente, a scalare, i caratteri della stringa, da un massimo equivalente a tutti quelli digitati ad un minimo di 1 carattere, il primo della stringa e, in mancanza di corrispondenza, dalla causale il cui primo carattere sia > del primo digit inserito in ComboBox.Text.
Mentre Il problema non si pone con la pressione dei tasti Freccia-giù o Pag-giù, perchè basta individuare il codice tasto e gestire l'evento dentro una function adatta all'occorrenza:
Codice: gambas [Seleziona]
Public Sub DescrMovDig_KeyPress()
  QualeTasto = New CheTasto($_StriMia)
  Select Case QualeTasto.$_Como
           Case "Freccia-giù", "Pag-giù"
            PreparoPopup(DescrMovDig.Text)
            DescrMovDig.Popup
  End Select
la cosa assume una situazione completamente diversa se voglio intercettare l'evento popup scatenato dal click del mouse sul triangolino a dx della ComboBox. Infatti, non sono riuscito a trovare l'evento specifico. ???
:ciao: