Aangepaste besturingselementen

Toepassingen kunnen maken van aangepaste besturingselementen taken niet ondersteund door vooraf gedefinieerde controles uitvoeren. De Win32-API biedt de volgende manieren om aangepaste besturingselementen te maken:

Eigenaar getekende besturingselementen gebruiken

Knoppen, keuzelijsten en keuzelijsten met invoervak hebben eigenaar getekende stijlen beschikbaar die de controle een bericht verzenden naar het bovenliggende venster directe wanneer het besturingselement moet worden getrokken. Deze functie maakt het mogelijk een toepassing te wijzigen van de vormgeving van een besturingselement. Knoppen benvloedt de eigenaar getekende stijl hoe het systeem trekt het gehele besturingselement. Voor keuzelijsten en keuzelijsten met invoervak, het bovenliggende venster tekent de items in het besturingselement en het besturingselement haalt haar eigen overzicht. Een toepassing kan bijvoorbeeld een keuzelijst aanpassen, zodat een kleine bitmap naast elk item in de lijst worden weergegeven.

Een toepassing kunt aanwijzen keuzelijsten, keuzelijsten met invoervakken en knoppen als eigenaar getekende besturingselementen door hen te maken met de gewenste stijl. Wanneer een besturingselement de eigenaar getekende stijl heeft, behandelt het systeem van de gebruiker interactie met het besturingselement zoals gebruikelijk, het uitvoeren van taken, zoals het detecteren wanneer een gebruiker een knop heeft gekozen en de kennisgeving van de knop eigenaar van de gebeurtenis. Echter, omdat het besturingselement eigenaar getrokken is, het bovenliggende venster van het besturingselement is verantwoordelijk voor de visuele weergave van het besturingselement. Zie voor meer informatie over besturingselementen eigenaar getekende eigenaar getekende knoppen, eigenaar getekende keuzelijstenen keuzelijsten met invoervak eigenaar getekende.

Het venster klasse van een bestaand besturingselement subclassing

Een bestaand besturingselement subclassing is een andere manier om een aangepast besturingselement. De subklasse procedure kunt geselecteerde gedrag van het besturingselement wijzigen door de verwerking van deze berichten die invloed hebben op de geselecteerde gedrag. Alle andere berichten doorgeven aan het oorspronkelijke venster procedure voor het besturingselement. Een toepassing kan bijvoorbeeld een kleine bitmap naast de tekst weergeven in een besturingselement alleen-lezen, n regel bewerken door het besturingselement subclassing en verwerken van de WM_PAINT -bericht. Voor meer informatie, Zie Venster Procedure subclassificering.

Hoewel een toepassing kan subklasse een vooraf gedefinieerde controle, is het gebaseerd op de procedure van het venster van het besturingselement om alle andere aspecten van het gedrag van het besturingselement. Voor meer informatie over het gedrag van een besturingselement, zie het afzonderlijke onderwerp voor de vooraf gedefinieerde controles.

Uitvoering van een venster toepassing gedefinieerde klasse

Het proces voor het registreren van een venster toepassing gedefinieerde klasse voor een aangepast besturingselement is hetzelfde als voor het registreren van een klasse voor een gewone venster. Een aangepaste besturingselement, de naam van de klasse venster opgeven in de CreateWindowEx functie of in een dialoogvenster vak sjabloon maken. Elke klasse moet een unieke naam, een overeenkomstige procedure venster en andere informatie.

Op een minimum trekt het venster procedure het besturingselement. Als het besturingselement een toepassing gebruikt om te laten de type-informatie van de gebruiker, de venster-procedure ook verwerkt Invoerberichten van het toetsenbord en de muis en meldingen verzendt naar het bovenliggende venster. Bovendien, als het besturingselement besturingsberichten ondersteunt, verwerkt de procedure venster berichten verzonden naar het door het bovenliggende venster of andere vensters. Bijvoorbeeld verwerken besturingselementen vaak de WM_GETDLGCODE boodschap van dialoogvensters om direct een dialoogvenster voor het verwerken van invoer van het toetsenbord op een bepaalde manier.

Index