Gå til innhold

Hvordan legge til ord i combobox når programmet kjører?


Anbefalte innlegg

Videoannonse
Annonse
VB.NET

Combobox.Items.Add("Hello World!")

VB6

Combobox.AddItem "Hello World!"

(hvis jeg husker riktig da)

 

Takk Geir. Går det ann å få det slik at vis brukeren høyreklikker på den aktuelle comboboxen så åpner comboboxen for edit. jeg programmerer i vb.net

Lenke til kommentar
Jeg er litt usikker på hva du mener.

 

OK. hmm skal vi se!! Jeg har en form med mange comboboxer, der kan brukerene registrere sine observasjoner. De fleste observasjoner er fastsatt av en nordisk standar. Disse standardene har jeg editert på forhånd inn i comboboxene, men det må være mulig for brukerne å legge til observasjoner i comboboxene fordi de fleste brukerne har noen personlige måte/vei å rapportere/skrive sin observasjon på.

 

Derfor er det viktig for brukerne å kunne tilføye sine personlige ord/utrykk i comboboxene på en enkel og rask måte.

Dette må gjøres med alle comboboxene i mitt program og det er mange av dem.

 

Håper du forstår hva jeg er ute etter.

 

Hilsen Henning

Lenke til kommentar

Ok

 

Jeg regner med at du allerede lagrer disse verdiene i en combobox et sted, så det enkleste er rett og slett å legge inn en KeyPress event:

 

Public Sub OnComboKeyPress(ByVal sender As Object, ByVal e As KeyEventArgs)
 If e.KeyChar = Chr(13) Then
Dim cmb As ComboBox = CType(sender, GetType(ComboBox))
cmb.Items.Add(cmb.Text)
 End If
End Sub

 

Deretter binder du denne funksjonen til alle comboboxene som trenger den.

Lenke til kommentar
Ok

 

Jeg regner med at du allerede lagrer disse verdiene i en combobox et sted, så det enkleste er rett og slett å legge inn en KeyPress event:

 

Public Sub OnComboKeyPress(ByVal sender As Object, ByVal e As KeyEventArgs)
 If e.KeyChar = Chr(13) Then
Dim cmb As ComboBox = CType(sender, GetType(ComboBox))
cmb.Items.Add(cmb.Text)
 End If
End Sub

 

Deretter binder du denne funksjonen til alle comboboxene som trenger den.

 

Får det ikke til å virke. Vet ikke hvor jeg skal sette inn den koden eller hvordan den virker. Uansett hva jeg gjorde fikk jeg mange feilmeldinger. Sliter med å sette koder jeg finner eller får hjelp med på rett sted.

Men man lærer så lenge man lever. Kan du forklare nærmere hvordan jeg skal gjøre dette.

 

Hilsen Henning

Lenke til kommentar

Ser ut til at e-parameteren hadde feil datatype. I tillegg er det nok en god idé å automatisere refereringen til hendelsesprosedyren:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

   ' Utvid funksjonaliteten til alle kombibokser i formen
   For Each Combo As ComboBox In Me.Controls
       ' Kobler funksjon til hendelse
       AddHandler Combo.KeyPress, AddressOf OnComboKeyPress
   Next

End Sub

Public Sub OnComboKeyPress(ByVal sender As Object, ByVal e As KeyPressEventArgs)

   ' Legg til ord/uttrykk når bruker klikker Enter
   If e.KeyChar = Chr(13) Then
       With CType(sender, ComboBox)
           .Items.Add(.Text)
       End With
   End If

End Sub

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...