COMPOSANT "BOUTON/IMAGE" TIMGBTN

SiZiOUS Messages postés 69 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 novembre 2006 - 3 juin 2004 à 21:42
cs_flagada Messages postés 60 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 18 février 2011 - 26 déc. 2009 à 22:26
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/23367-composant-bouton-image-timgbtn

cs_flagada Messages postés 60 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 18 février 2011
26 déc. 2009 à 22:26
J'ai l'impression qu'il se passe des trucs pas nets avec la transparence.
Déjà si je ne m'abuse la couleur de la transparence n'est pas prise en compte :
Si la transparence est activée c'est la couleur du pixel en haut à gauche de l'image qui est utilisée.
Je pense qu'il faudrait rajouter une ligne du style "TempImg.TransparentMode:=tmFixed;" non?

De plus si l'on essaye de changer la couleur de transparence on ne peut pas le faire, la valeur revient toujours à clFushia??
Spatul Messages postés 12 Date d'inscription mercredi 21 août 2002 Statut Membre Dernière intervention 9 octobre 2008
30 janv. 2007 à 09:16
A prioris, le bug venait du fait que j'utilise une variable pour connaitre l'état visuel du bouton ("ImgValeur"). Cette variable est maintenant déclaré dans le "private" du composant, elle n'affecte donc plus les autres composant lors d'un appel au "MouseDown" pour afficher une autre fenetre en modal.
Merci de me tenir informé.
Spatul Messages postés 12 Date d'inscription mercredi 21 août 2002 Statut Membre Dernière intervention 9 octobre 2008
29 janv. 2007 à 08:59
Je vais vérifier cela et essayer de trouver la correction. Merci
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
26 janv. 2007 à 20:11
4 mois et 2 ans après, je découvre un bug sur ce composant =)
Pour le provoquer c'est facile :
Form1 ouvre Form2 en modal :

begin
Form2.ShowModal;
end;

Ma Form2 contient des (excellents) TImgBtn. Malheureusement, ils sont en positions 'enfoncés'. Si je passe ma souris dessus, l'effet 'dessus' n'apparait pas. Si je clic, l'effet 'enfoncé' apprait lui par contre. Pour relever le bouton (position 'normale') je doit cliquer, maintenir enfoncé, déplacer ma souris hors du bouton. Là, la position 'normale' du bouton apparait. mais une fois de plus si je passe ma souris dessus, l'effet 'dessus' n'apparait toujours pas.

J'ai refait idem avec Form2.Show; et ça passe niquel.

Je récapitule : Les TImgBtn qui sont dans une form en showmodal n'ont pas un comportement visuel correct.
Voila !
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
26 sept. 2004 à 12:39
9/ 10 bravo !
-1 pour le png pas géré lol
:D a+
Spatul Messages postés 12 Date d'inscription mercredi 21 août 2002 Statut Membre Dernière intervention 9 octobre 2008
7 juin 2004 à 09:09
Heureux que ça serve à d'autres personnes que moi...
Je vais essayer de modifier le source pour utiliser les images PNG (pour avoir la transparence complette)...Mais il y a du boulot !
SiZiOUS Messages postés 69 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 novembre 2006
3 juin 2004 à 21:42
Cool! Depuis le temps que je cherchais un bouton comme celui la!
Vu que je ne sais pas faire des composants...
Rejoignez-nous