Hei
Tarkoitus olisi, että comboboxeissa cbsukunimi on sukunimet ja cbetunimi on etunimet. Kun cbsukunimeen alkaa kirjoittamaan niin ohjelma rajaa cbsukunimiin kaikki esim kirjoitetun perusteella "SE" alkavat sukunimet ja cbetunimiin etunimet joiden sukunimi alkaa "SE" kirjaimilla. Tästä on koodin pätkä alla.
Ongelmani on, että kun kirjoitan "S" kirjaimen jälkeen seuraavan kirjaimen "E" on kohdistin siistynyt cbsukunimi kentän alkuun ja tuloksena kentässä lukee "ES" eli teksti tulee käänteisenä...
Miten saan kohdistimen menemään "S":n perään, jotta kirjoittaminen tulisi oikein päin...
AST on taulukko jossa 0=sukunimi ja 1=etunimi.
Kerkiäisikö joku auttamaan?
Private Sub cbSukunimi_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles cbSukunimi.TextChanged If cbSukunimi.Text = "" Then HaeAsiakkaidenTiedotCB() : Exit Sub cbEtunimi.Items.Clear() cbSukunimi.Items.Clear() For i = 1 To 100 If UCase$(cbSukunimi.Text) = Microsoft.VisualBasic.Left(AST(0, i), Len(cbSukunimi.Text)) Then cbEtunimi.Items.Add(AST(1, i)) cbSukunimi.Items.Add(AST(0, i)) End If Next End Sub
Mikset vaan käytä sitä autocomplete-toimintoa joka siinä on vakiona?
Anyways, SelectionStart määrittää kursorin paikan comboboksin tekstikentässä.
Kiitos Grez
Lisäsin koodin luppuun rivin
cbSukunimi.SelectionStart = Len(cbSukunimi.Text)
ja nyt toimii niin kuin haluan.
Saisin varman monia asioita tehtyä paremmin ja nopeammin jos käyttäisin erilaisia automaatioita kuten tuota autocompletea. Jotenkin sitä on vaan tottunut tekemään asiat kantapään kautta.
Kiitos SelectionStart vinkistä.
jokke
Aihe on jo aika vanha, joten et voi enää vastata siihen.