cs_Nebula
Messages postés787Date d'inscriptionsamedi 8 juin 2002StatutMembreDernière intervention 7 juin 2007
-
8 déc. 2003 à 14:28
cs_Nebula
Messages postés787Date d'inscriptionsamedi 8 juin 2002StatutMembreDernière intervention 7 juin 2007
-
14 juin 2005 à 16:01
Bonjour à tous.
Je cherche à faire une ListBox gérant les retours à la ligne lorsque les items sont trop longs par rapport à la largeur de la ListBox, je me suis donc attelé à une ListBox en OwnerDrawVariable.
Mais le OnMeasureItem ne semble être appelé par Delphi que la première fois du rendu de l'item, les fois suivantes il semble appeler directement le OnDrawItem... Ce qui m'embête car si je change la largeur de la ListBox à l'exécution, j'aimerais qu'elle s'adapte à ses nouvelles dimensions, et son contenu avec !
M'y prendrais-je mal ou y'a t'il un petit truc à faire pour forcer le OnMeasureItem à chaque redimenssionement/changement de police ?
Petite précision : j'utilise Delphi 5.
Merci d'avance à ceux qui me répondront ;-)
Le savoir ne vaut quelque chose que s'il est partagé par tous.
CheckItemSize étant une routine qui renvoie la taille occupée par
l'item (le Height dans OnMeasureItem). Il faut également appeler
ListBoxChat.Invalidate si la Form est redimensionnée (OnResize).
lychong
Messages postés5Date d'inscriptionvendredi 25 avril 2003StatutMembreDernière intervention18 mai 2004 18 mai 2004 à 17:22
Salut!
Je n'ai rien contre ton code ni rien de pour non plus car à mon sens il manque quelque chose pour ceci soit complet!
C de pouvoir redessiner aussi la partie du composant vide d'item, c à dire le bas du TListBox.
Cela fait 1an que je cherche comment le redessiner si quelqu'1 le sait je vous en prie aider moi!!!