Partager via


Utilisation de feuilles de propriétés dans votre application

Pour utiliser une feuille de propriétés dans votre application, exécutez les étapes suivantes :

  1. Créez une ressource modèle de boîte de dialogue pour chaque page de propriétés.N'oubliez pas que l'utilisateur peut basculer d'une page à une autre, donc présentent chaque page et de manière cohérente que possible.

    Les modèles de boîte de dialogue pour toutes les pages ne doivent pas être la même taille.L'infrastructure utilise la taille de la plus grande page pour déterminer la quantité d'espace à allouer dans la feuille de propriétés pour les pages de propriétés.

    Lorsque vous créez une ressource modèle de boîte de dialogue pour une page de propriétés, vous devez spécifier les styles suivants dans la feuille de propriétés de propriétés de dialogue :

    • Définissez la zone d'édition de Caption dans la page de Général le texte que vous souhaitez afficher dans l'onglet pour cette page.

    • Définissez la zone de liste de Style dans la page de Styles à Child.

    • Définissez la zone de liste de Border dans la page de Styles à Thin.

    • Assurez -vous que la case à cocher de Titlebar dans la page de Styles est sélectionnée.

    • Assurez -vous que la case à cocher de Désactivé dans la page de Plus de styles est sélectionnée.

  2. Créez CPropertyPageclasse dérivée correspondant à chaque modèle de boîte de dialogue page de propriétés.Consultez l' ajouter une classe.Choisissez CPropertyPage comme classe de base.

  3. Créez les variables membres pour conserver les valeurs de cette page de propriétés.Le processus pour ajouter des variables membres à une page de propriétés est exactement identique à des variables ajout de membres dans une boîte de dialogue, car une page de propriétés est une boîte de dialogue particulière.Pour plus d'informations, consultez Définir des variables membres pour les contrôles de boîte de dialogue.

  4. Construisez un objet de CPropertySheet dans votre code source.Généralement, vous construisez l'objet d' CPropertySheet dans le gestionnaire pour la commande qui affiche la feuille de propriétés.Cet objet représente la feuille de propriétés entière.Si vous créez une feuille de propriétés modale avec la fonction de DoModal , l'infrastructure fournit trois boutons de commande par défaut : OK, annulation, et s'appliquent.L'infrastructure ne crée pas de boutons de commande pour les feuilles de propriétés non modales créées avec la fonction de Create .Vous n'avez pas besoin de dériver une classe d' CPropertySheet à moins que vous ne souhaitiez à ajouter d'autres contrôles (tels qu'une fenêtre d'aperçu) ou d'afficher une feuille de propriétés non modale.Cette étape est nécessaire pour les feuilles de propriétés non modales parce qu'elles ne contiennent pas de contrôle par défaut qui peut être utilisé pour fermer la feuille de propriétés.

  5. Pour chaque page soit ajoutée à la feuille de propriétés, procédez comme suit :

    • Construisez un objet pour chaque CPropertyPageclasse dérivée que vous avez créé précédemment dans ce processus.

    • Appel CPropertySheet::AddPage pour chaque page.

    En général, l'objet qui crée CPropertySheet également créer des objets d' CPropertyPage dans cette étape.Toutefois, si vous implémentez CPropertySheetclasse dérivée de, vous pouvez inclure les objets d' CPropertyPage dans l'objet d' CPropertySheet et appeler AddPage pour chaque page d' CPropertySheet- constructeur de classe dérivée.AddPage ajoute l'objet d' CPropertyPage à la liste de la feuille de propriétés de pages mais ne crée pas la fenêtre de cette page.Par conséquent, il n'est pas nécessaire d'attendre à la création de la fenêtre de feuille de propriétés pour appeler AddPage; vous pouvez appeler AddPage du constructeur de la feuille de propriétés.

    Par défaut, si une feuille de propriétés dispose plus d'onglets que tient dans une seule ligne de la feuille de propriétés, les onglets les empileront dans plusieurs lignes.Pour désactiver l'empilement, appelez CPropertySheet::EnableStackedTabs avec le paramètre a FALSE.Vous devez appeler EnableStackedTabs lorsque vous créez la feuille de propriétés.

  6. Appelez CPropertySheet::DoModal ou Create pour afficher la feuille de propriétés.Appelez DoModal pour créer une feuille de propriétés en tant que boîte de dialogue modale.Appelez Créer pour créer la feuille de propriétés en tant que boîte de dialogue non modale.

  7. Données d'échange entre les pages de propriétés et le propriétaire de la feuille de propriétés.Cela est expliqué dans l'article Échange de données.

Pour obtenir un exemple d'utiliser des feuilles de propriétés, consultez à MFC l'exemple général PROPDLG.

Voir aussi

Concepts

Feuilles de propriétés (MFC)