HeaderControl associé à CheckListBox

DropF Messages postés 18 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 28 avril 2005 - 29 mars 2003 à 00:25
DropF Messages postés 18 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 28 avril 2005 - 29 mars 2003 à 20:15
Bonjour,

Je voudrais savoir comment associer un HeaderControl à une CheckListBox.

Dans l'aide, j'ai vu que les objets THeaderControl avaient une propriété HostDockSite permettant de le faire. Mais le problème, c'est :
1 - je suis obligé de l'associer durant l'évènement OnCreate de la fiche contenant ces objets (car elle n'est pas présente dans l'inspecteur d'objets)
2 - quand j'associe le HeaderControl à la CheckListBox, en mettant la propriété Align du HeaderControl à "alTop", le premier élément de la CheckListBox est caché par le HeaderControl.

Là, il y a 2 solutions à mon problème : soit j'abandonne le premier élément, soit je décale tout à l'aide d'un Canvas. Or, je cite l'aide : "(...) il est possible de placer des sections d'en-tête au-dessus d'une boîte liste (TListBox)". Ça veut dire qu'il est possible d'obtenir quelque chose de propre sans avoir à bidouiller. Car je préfère passer par une CheckListBox plutôt que par un ListView, avec la propriété CheckBoxes à true, qui est moins adapté au travail que je veux faire (vérification si checked, etc.)

Pouvez-vous m'aider ?
Merci.

2 réponses

cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
29 mars 2003 à 09:21
Que dit l'aide en ligne ?
Spécifie le contrôle dans lequel ce contrôle est ancré.

property HostDockSite: TWinControl;

Description

Consultez la propriété HostDockSite pour accéder au contrôle fenêtré dans lequel ce contrôle est ancré. Si le contrôle est flottant, HostDockSite est un contrôle temporaire de type FloatingDockSiteClass ou (s'il n'y a pas de classe de site d'ancrage flottant) nil.

Es-tu bien sur que la description corresponde au problème que tu poses ici ?
Quel est l'intérêt de mettre un HeaderControl dans un contrôle CheckListBox ?
Si tu veux vraiment un effet de relief au dessus de la liste, alors prends un TListView, tu mets sa propriété CheckBoxes à true. Le résultat sera celui souhaité, mais sans bidouillages.
May Delphi be with you
0
DropF Messages postés 18 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 28 avril 2005
29 mars 2003 à 20:15
> Quel est l'intérêt de mettre un HeaderControl dans un contrôle CheckListBox ?
L'intérêt est le même que d'avoir un HeaderControl dans un ListView
> Si tu veux vraiment un effet de relief au dessus de la liste, alors prends un TListView, tu mets sa propriété CheckBoxes à true. Le résultat sera celui souhaité, mais sans bidouillages.
L'objet TListView n'a pas d'évènement permettant de savoir si une case a été cochée ou non...
0
Rejoignez-nous