Création du contrôle Header
Le contrôle d’en-tête n’est pas directement disponible dans l’éditeur de boîte de dialogue (bien que vous puissiez ajouter un contrôle de liste, qui inclut un contrôle d’en-tête).
Pour placer un contrôle d’en-tête dans une boîte de dialogue
Incorporez manuellement une variable membre de type CHeaderCtrl dans votre classe de dialogue.
Dans OnInitDialog, créez et définissez les styles pour le
CHeaderCtrl
, positionnez-le et affichez-le.Ajoutez des éléments au contrôle d’en-tête.
Utilisez l’Assistant Classe pour mapper les fonctions de gestionnaire dans la classe de boîte de dialogue pour tous les messages de notification de contrôle d’en-tête que vous devez gérer (voir Mappage des messages aux fonctions).
Pour placer un contrôle d’en-tête dans une vue (et non pas un contrôle CListView)
Incorporez un objet CHeaderCtrl dans votre classe d’affichage.
Style, position et affichage de la fenêtre de contrôle d’en-tête dans la fonction membre OnInitialUpdate de la vue.
Ajoutez des éléments au contrôle d’en-tête.
Utilisez l’Assistant Classe pour mapper les fonctions de gestionnaire dans la classe d’affichage pour tous les messages de notification de contrôle d’en-tête que vous devez gérer (voir Mappage des messages aux fonctions).
Dans les deux cas, l’objet de contrôle incorporé est créé lorsque l’objet d’affichage ou de boîte de dialogue est créé. Ensuite, vous devez appeler CHeaderCtrl ::Create pour créer la fenêtre de contrôle. Pour positionner le contrôle, appelez CHeaderCtrl ::Layout pour déterminer la taille et la position initiales du contrôle et SetWindowPos pour définir la position souhaitée. Ajoutez ensuite des éléments comme décrit dans Ajout d’éléments au contrôle d’en-tête.
Pour plus d’informations, consultez Création d’un contrôle d’en-tête dans le Kit de développement logiciel (SDK) Windows.