Utiliser des pngs pour les speedbuttons? [Delphi] - Delphi/Pascal - Programmation
Marsh Posté le 28-03-2004 à 16:39:27
Perso, j'fais comme ça :
Code :
|
Mais je pense que ton problème est plus lié à des icônes crades @ la base... (chez moi, ça bave pas)
Marsh Posté le 28-03-2004 à 16:52:27
J'ai essayé avec ta méthode pour l'icone de gauche, voilà ce que ça donne:
J'ai l'impression que c'est la transparence des pngs qui pose pb, parce qu'elles sont nickel à la base:
Marsh Posté le 28-03-2004 à 17:06:57
Pourquoi tu utilises des Speedbuttons pour une Toolbar ? C'est un peu crado comme méthode En plus c'est vachement peu pratique.
Depuis pas mal de versions de Delphi, il y a les TToolbar + TToolbuttons + TImageList pour ça
Pour rendre une TImageList "32 bits" (supportant les transparences" ) il suffit de faire :
Code :
|
Dans le OnCreate de ta Form.
Note, il ne faut le faire que sous XP ! Sous les autres Windows ça ne marchera pas.
Pour savoir si t'es sous XP :
Code :
|
Si tu passes par un TBitmap, je ne suis pas sûr que tu garderas la transparence de tes images. Je te conseille d'utiliser des TIcon plutôt que TBitmap.
Marsh Posté le 28-03-2004 à 17:13:23
Euh ben je connais pas trop delphi, je tâtonne un peu, donc possible que je fasse n'importe quoi
Je vais essayer les Ttoolbuttons et TImagelist alors.
Marsh Posté le 28-03-2004 à 17:20:36
T'as vu
---------------------------
Notification d'une exception du débogueur
---------------------------
Le projet Project1.exe a provoqué une classe d'exception EPNGCannotChangeTransparent avec le message 'Setting bit transparency color is not allowed for png images containing alpha value for each pixel (COLOR_RGBALPHA and COLOR_GRAYSCALEALPHA)'.
---------------------------
J'ai testé aussi avec ça aussi mais j'ai le même résultat :
Code :
|
Marsh Posté le 28-03-2004 à 17:24:17
Oui, j'avais essayé avec TransparentColor aussi, j'ai eu la mm erreur.
Marsh Posté le 28-03-2004 à 17:27:39
& tu remarqueras que comme par hasard, ce sont tes pixels semi-transparents qui sont merdiques... les full transparents sont bien gérés eux.. j'ai peur que tu ne souhaites dépasser les limites (compréhensible) du composant...
Marsh Posté le 28-03-2004 à 17:38:37
Soit tu prends du 32 bits mais à ce moment pas de TransparentColor et ça marche uniquement sous XP.
Soit tu fais comme tout le monde avec des images à transparence simple (une couleur qu'on définit comme étant transparente)
Marsh Posté le 28-03-2004 à 15:50:37
Bonjour,
Je cherche à utiliser des pngs comme glyph pour des speedbuttons. J'utilise le composant TPngImage, avec ce code-là:
Les glyphs des speedbuttons sont de simples bitmaps blancs, de la mm taille que mes pngs.
Ca marche, à part que ça me donne ça, les contours sont un peu crades:
Est-ce qu'il y a moyen d'afficher les pngs parfaitement? Avec les contours bien nets etc...?
Sinon si il y a d'autres méthodes... je prends
Message édité par Ipso le 28-03-2004 à 15:51:33