• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

tekst automatisch selecteren in combobox

Status
Niet open voor verdere reacties.

sylvester-ponte

Verenigingslid
Lid geworden
19 apr 2007
Berichten
6.553
hallo,

ik heb een userform met daarin een 2 comboboxen
is het mogenlijk dat als ik wissel (door met de muis te klikken) tussen deze boxen de tekst in de geselecteerde box geselecteerd wordt? en hoe doe ik dat?
dit heb ik al geprobeerd:
Code:
Private Sub ComboBox1_Click()
ComboBox1.SelStart = 0
ComboBox1.SelLength = Len(ComboBox1.Value)
End Sub

Private Sub ComboBox2_Change()
ComboBox2.SelStart = 0
ComboBox2.SelLength = Len(ComboBox1.Value)
End Sub

groet sylvester
 

Bijlagen

  • test combo met tekst_selectie(1.xls
    23 KB · Weergaven: 49
Laatst bewerkt:
hallo
ik heb ontdekt dat de ComboBox1_Click in deze Form helemaal niet werkt

hoe zou dat komen?

moet ik dat ergens aan zetten?

groet sylvester
 
hallo
ik heb een oplossing gevonden
wel raar hoor
het gaat met de mouseMove event
die reageert wel.
Code:
Private Sub ComboBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    ComboBox1.SelStart = 0
    ComboBox1.SelLength = Len(ComboBox1.Value)
End Sub
Private Sub ComboBox2_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    ComboBox2.SelStart = 0
    ComboBox2.SelLength = Len(ComboBox2.Value)
End Sub
dit werkt ook als ik op de combo click

groet sylvester
 
Sylvester,
Probeer deze eens (met Combox_Click).
De eigenschap "Style" van de comboboxen heeft 2 opties, bij één van de twee krijg je het gewenste effect.
 

Bijlagen

  • ComboSylv(1).xls
    27,5 KB · Weergaven: 63
hallo WHER


zo kan ik geen nieuwe waarden toevoegen
het wordt dan een listbox

jammer dat bij een combobox de klickEvent niet getrickert wordt
de enterEvent doet het wel maar die maakt mijn code ongedaan. daar is geen cancel aanwezig.
bij de dubbelclickEvant zit een cancel optie dan wordt zijn eigen code niet uitvoert maar de mijne wel.
dus als ik voor mijn code cancel = true zet , dan werkt dubbelClick ook

groet sylvester
 
Als je normaal je comboboxen laat vullen bij 'Userform Initialize', en je selecteert een waarde uit de combobox, is deze tekst/waarde automatisch geselecteerd.
 
hallo Harry

ik selecteer alleen de combobox (met een klik van de muis) dus de aanwezige waarde moet dan automatisch geselecteerd worden.

dat werkt niet zomaar, met tab gaat het prima en met enter ook
met de enter_event niet
en met de click_even ook niet (die werkt helemaal niet bij een combobox)

als jij mijn voorbeeldje kan verbouwen zodat het "normaal" werkt graag

ik gebruik nu de mousemove_event dat werkt wel, maar is wel raar

groet sylvester
 
De Click_event werkt wel als je in de combobox een lijstje binnenhaalt, en daar iets in selecteerd.
Maar in jouw voorbeeld is er geen lijstje, maar gewoon tekst.
Hier een voorbeeldje, en klik op het pijltje waar een combobox voor is bedoelt.

Helaas kan ik niet meer reageren vandaag.
 

Bijlagen

  • test combo met tekst_selectie.xls
    41,5 KB · Weergaven: 52
hallo Harry

als ik de tab toets gebruik, wordt van zelf de tekst in de volgende combo geselecteerd.
en om het voor de gebruiker universeel te houden wil ik dat dat ook gebeurt als je met de muis naar een andere combo gaat.(ook als je in de tekst klikt)

groet sylvester
 
hallo Harry

dit is wat ik er van ga maken denk ik:
Code:
Private NetBinnenGekomen As Boolean

Private Sub ComboBox2_Enter()
NetBinnenGekomen = True
End Sub

Private Sub ComboBox2_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If NetBinnenGekomen = True Then
        ComboBox2.SelStart = 0
        ComboBox2.SelLength = Len(ComboBox1.Value)
        NetBinnenGekomen = False
    End If
End Sub

Private Sub ComboBox1_Enter()
NetBinnenGekomen = True
End Sub

Private Sub ComboBox1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If NetBinnenGekomen = True Then
        ComboBox1.SelStart = 0
        ComboBox1.SelLength = Len(ComboBox1.Value)
        NetBinnenGekomen = False
    End If
End Sub

als je iets mooiers weet, graag
ik vind mijn oplossing te veel geknutsel

groet sylvester
 

Bijlagen

  • test combo met tekst_selectie3.xls
    43 KB · Weergaven: 46
Hallo Sylvester,

Ik heb er weinig ervaring mee, maar zo moet het ook werken volgens mij.
Trouwens ook niet echt veel veranderingen.

Code:
Private Sub ComboBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
 With ComboBox1
 .SelStart = 0
 .SelLength = Len(.Value)
 End With
End Sub

Private Sub ComboBox2_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
 With ComboBox2
 .SelStart = 0
 .SelLength = Len(.Value)
 End With
End Sub

Private Sub UserForm_Initialize()
 With ComboBox1
 .SelStart = 0
 .SelLength = Len(.Value)
 End With
End Sub
 
Harry bedankt voor het mee denken

ik kies een van de oplossingen ik weet nog niet zeker welke.
ComboBox1_MouseMove heeft als nadeel dat hij de computer wel erg bezig houdt.
dus ik verwacht dat ik het houdt bij de laatst door mij geposte oplossing.

groet sylvester
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan