Differenze tra le versioni di "ComboBox che consente di posizionarsi sulla prima ricorrenza di un item quando si digitano le sue prime lettere"
Da Gambas-it.org - Wikipedia.
(2 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
Per ottenere un ''ComboBox'' che consenta di posizionarsi sulla prima ricorrenza di un item quando si digitano le sue prime lettere, si può usare questa soluzione: | Per ottenere un ''ComboBox'' che consenta di posizionarsi sulla prima ricorrenza di un item quando si digitano le sue prime lettere, si può usare questa soluzione: | ||
− | + | Public Sub Form_Open() | |
− | + | ||
+ | ComboBox1.List = ["abcde", "abcef", "abefg", "acdef", "acdfg", "acefg"] <FONT Color=gray>' ''Una lista esmplificativa di elementi testuali''</font> | ||
ComboBox1.Tag = 1 | ComboBox1.Tag = 1 | ||
End | End | ||
− | + | ||
− | + | Public Sub ComboBox1_Change() | |
− | |||
Dim s As Short | Dim s As Short | ||
Riga 19: | Riga 19: | ||
End With | End With | ||
− | + | End | |
− | + | ||
− | + | ||
− | + | Public Sub ComboBox1_KeyRelease() | |
If Key.Code < 127 Then | If Key.Code < 127 Then | ||
Riga 30: | Riga 30: | ||
Endif | Endif | ||
− | + | End |
Versione attuale delle 10:22, 10 giu 2024
Per ottenere un ComboBox che consenta di posizionarsi sulla prima ricorrenza di un item quando si digitano le sue prime lettere, si può usare questa soluzione:
Public Sub Form_Open() ComboBox1.List = ["abcde", "abcef", "abefg", "acdef", "acdfg", "acefg"] ' Una lista esmplificativa di elementi testuali ComboBox1.Tag = 1 End Public Sub ComboBox1_Change() Dim s As Short With ComboBox1 s = .List.Find(String.Left(.Text, .Pos) & "*", gb.Like) If s > -1 Then .Text = ComboBox1[s].Text .Pos = .Tag Endif End With End Public Sub ComboBox1_KeyRelease() If Key.Code < 127 Then Inc ComboBox1.Tag Else ComboBox1.Tag = ComboBox1.Pos + 1 Endif End