Windows Forhåndsdefinert Controls - Part 19 Volum - Windows brukergrensesnitt Innledning Dette er del 19 av min serie, Windows forhåndsdefinerte kontroller. For å forstå denne opplæringen, har du mest har lest alle de tidligere tutorials av serien. I denne delen av serien, ser vi hvordan du oppretter en listeboks. Merk: Hvis du ikke kan se koden, eller hvis du tror noe mangler (ødelagt kobling, bilde fraværende), bare kontakte meg på [email protected]. Det er, kontakt meg for den minste problemet du har om hva du leser.
En listeboks En liste boksen er en kontroll som har en liste over elementer som brukeren kan velge fra. Brukeren velger et element ved å velge den. Brukeren velger et element ved å klikke på det. Det er mulig å velge et element ved hjelp av tastaturet, men jeg vil ikke gå inn på det. I denne serien skal vi snakke om listebokser som kans strenger (tekster). En listeboks kan gi rullefelt hvis elementene er for mange for feltet for antall elementer. Velge et listeelement endrer tekstfarge og dens bakgrunnsfarge. Opprette en listeboks Du kan opprette en liste boksen med CreateWindowEx funksjonen.
Klassen er, listeboksen. Ikke glem å skrive WS_CHILD siden det er et underordnet vindu. Husk at en listeboks er en kontroll og det er behov for sin unike heltall identifikator. Typer av listebokser Det er to typer lister: single-utvalg og flere valg. Single-utvalget er standard. I en enkeltvalg listeboksen, kan brukeren velge bare ett element om gangen. I et flervalg listeboksen, kan brukeren velge mer enn ett element om gangen. Hvis du vil at flere utvalg listeboksen, bruker LBS_EXTENDEDSEL stil. Du trenger ikke å skrive noen spesiell stil for enkeltvalg listeboksen.
Coding Du kan opprette en liste boksen med CreateWindowEx funksjonen. Etter at du må sende hvert element strengen til boksen med Sendmessage funksjonen. I denne serien, har vi å gjøre med strenger som elementer i listeboksen. Meldingen du legger en streng til en liste merket LB_ADDSTRING. Denne meldingen tilfører en streng til en listeboks. Hvis listen ikke har LBS_SORT stil, er strengen lagt til på slutten av listen. Hvis ikke, blir strengen settes inn i listen, og listen er sortert. Den wParam parameter brukes ikke (sett den til NULL).
LParam parameter er en peker til null-terminert streng som skal legges til. Returverdien er listeboksen null-basert indeks over den ekstra strengen. Hvis det oppstår en feil, er returverdien LB_ERR. Hvis det ikke er nok plass til å lagre den nye