Delen via


Type-Safe Toegang tot besturingsopties met codewizards

Als u bekend bent met DDX-functies, kunt u de eigenschap Control in de wizard Lidvariabele toevoegen gebruiken om typeveilige toegang te maken. Deze aanpak is eenvoudiger dan het maken van besturingselementen zonder codewizards.

Als u toegang wilt tot de waarde van een bedieningselement, biedt DDX dat. Als u meer wilt doen dan alleen toegang krijgen tot de waarde van een bedieningselement, gebruikt u de wizard Lidvariabele toevoegen om een lidvariabele van de juiste klasse toe te voegen aan uw dialoogklasse. Koppel deze lidvariabele aan de eigenschap Control.

Lidvariabelen kunnen een eigenschap Besturingselement hebben in plaats van een eigenschap Waarde. De eigenschap Waarde verwijst naar het type gegevens dat wordt geretourneerd door het besturingselement, zoals CString of int. De eigenschap Control maakt directe toegang tot het besturingselement mogelijk via een gegevenslid waarvan het type een van de besturingsklassen in MFC is, zoals CButton of CEdit.

Opmerking

Voor een bepaald besturingselement kunt u desgewenst meerdere lidvariabelen hebben met de eigenschap Waarde en maximaal één lidvariabele met de eigenschap Control. U kunt slechts één MFC-object toewijzen aan een besturingselement, omdat meerdere objecten die zijn gekoppeld aan een besturingselement, of een ander venster, leiden tot dubbelzinnigheid in de berichtkaart.

U kunt dit object gebruiken om lidfuncties voor het besturingsobject aan te roepen. Dergelijke aanroepen zijn van invloed op het besturingselement in het dialoogvenster. Voor een besturingselement voor een selectievakje dat wordt vertegenwoordigd door een variabele m_Checkbox, van het type CButton, kunt u bijvoorbeeld het volgende aanroepen:

m_Checkbox.SetCheck(BST_CHECKED);

Hier heeft de lidvariabele m_Checkbox hetzelfde doel als de lidfunctie GetMyCheckbox die wordt weergegeven in Type-Safe Toegang tot besturingselementen zonder codewizards. Als het selectievakje geen automatisch selectievakje is, hebt u nog steeds een handler in uw dialoogklasse nodig voor het BN_CLICKED controlenotificatiebericht wanneer er op de knop wordt geklikt.

Zie Besturingselementen voor meer informatie over besturingselementen.

Zie ook

Type-Safe toegang tot besturingselementen in een dialoogvenster
Werken met dialoogvensters in MFC
Type-Safe toegang tot besturingselementen zonder codewizards