Miten kuljetetaan dataa vb6 comboboxissa?
HTML menis vaikka näin:
<select name="combo">
<option value=21>Johnny Doent</option>
<option value=453>Smith & wesson</option>
<option value=3>Pekka Pankkiiri</option>
</select>
Miten vastaava vb6 combo? Jokaiselle nimelle on oma id kannassa jonka avulla pitäisi avata combosta valitun kentän mukainen data kannasta tekstikenttään... Eli kyseisen rivin id pitää saada tuleen combon mukana jotenkin, ei voi käyttää listindexiä tms..
VB:n combo box-elementillä on (samoin kuin list box-elementillä) hyödyllinen ominaisuus nimeltään ItemData. Jos englanti sujuu niin kannattaa kahlata VB:n ohjeista; lyhyesti sanottuna kuitenkin jokaista listan 'riviä' kohden voi sisällyttää ylimääräisen kokonaisluvun säilöön.
ComboBox1.AddItem "Tällä valinnalla on arvo 134." ComboBox1.ItemData(ComboBox1.NewIndex) = 134
Ongelma on nyt siinä, että vaikka luupissa syötän itemdataan id:t kun täytän combon, niin comboa käytettäessä tulee aina viimeisenä luupissa syötetty itemdata numero käyttöön..? Eli se ei saa sitä comboa clikatessa sitä kyseisen rivin itemdata arvoa vaan viimeismmän kannasta tulleen.
Heippa Toitsu!
ongelmasi hoituu näin...
Private Sub ComboBox1_Change() MsgBox ComboBox1.ItemData(ComboBox1.ListIndex) End Sub
Tämä toimii. Juttu oli tosiaan tuossa, että Newindx on mihin syötetään ja ListIndex mistä otetaan. Kiitos!
Aihe on jo aika vanha, joten et voi enää vastata siihen.