PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → Skinner dynamiquement une interface
Skinner dynamiquement une interface
Iniciado por ltdnico, 09,mar. 2006 18:10 - 8 respuestas
Publicado el 09,marzo 2006 - 18:10
Bonjour,

J'ai voulu faire en sorte que mes utilisateurs puissent changer les
images des boutons de la fenêtre de mon programme en remplaçant les
images existantes par celles de leur choix (en conservant le même
nom+extension et les mêmes dimensions).

Seulement, cela ne fonctionne pas. Apparemment, WinDev enregistre le
tout dans l'exécutable et il est impossible alors de changer l'apparence
de cette manière.

Quelqu'un aurait-il une solution ?

Merci.
Publicado el 09,marzo 2006 - 18:59
Pour le gabarit voir du côté de changegabarit...
Je l'ai fait cela fonctionne bien ! Il faut copier le gabarit -> fichiers .sty et .wdy dans le projet et l'inclure dans la bibliothèque principale .


Bon courage .

Michel LION
Publicado el 09,marzo 2006 - 20:37
Bonjour,
Je suis d'accord avec ton analyse, les fichiers des images ne sont pas présents avec mes applications installées. Elle doivent être stockées dans la bibliothèque.

Il est possible de modifier par programmation les images des boutons avec les propriétés ..images*.
Donc une solution ( pas terrible, mais bon ) serait de charger dynamiquement les images des boutons dans le code d'initialisation de ceux-ci.
Tu peux soit fixer une fois pour toute le nom des fichiers images, soit "stocker" l'association bouton/image dans un fichier ini/HF/autre, et proposer par exemple une fenêtre de personnalisation similaire au groupware.

Frédéric.
Publicado el 09,marzo 2006 - 20:38
C'était pas ça que je voulais faire mais j'ai fini par trouver tout
seul. Merci quand même :)

lion a écrit :
Pour le gabarit voir du côté de changegabarit...
Je l'ai fait cela fonctionne bien ! Il faut copier le gabarit -> fichiers .sty et .wdy dans le projet et l'inclure dans la bibliothèque principale .


Bon courage .

Michel LION

Publicado el 10,marzo 2006 - 10:02
Salut Nico,

Bon, tu as trouvé la solution. tant mieux pour toi...

Et tant pis pour les autres ne ne pas le savoir (ceux qui ont eu la gentillesse de se pencher sur ton Pb, par exemple)

Bon Dév
J Heffe
Publicado el 10,marzo 2006 - 10:03
C'est justement ce que j'ai fais :)
Publicado el 10,marzo 2006 - 12:11
Il faut, dans le code d'initialisation de chaque élément, indiquer le chemin vers l'image de fond et l'image.

Exemple, dans le code d'initialisation de Bouton1, on met :

MoiMême..ImageFond = "BoutonImageFond.gif"
MoiMême..Image = "BoutonImage.gif"

La solution était donnée dans une autre réponse donc c'était pas la pene de s'énerver ainsi ...
Publicado el 10,marzo 2006 - 12:15
Le seul soucis, c'est que cela ne fonctionne pas avec les images de fond des fenêtres (non mère MDI).

En fait, cela fonctionne en mode test mais pas lorsqu'on se sert de l'exécutable. Une idée ?

C'est peut-être un bug non ? Dans l'aide, il est indiqué que cela doit fonctionner en principe.
Publicado el 10,marzo 2006 - 14:05
Peut-être, je ne sais pas.
Tu peux peut-être essayer de "repeindre" la fenêtre avec un multitacherepeint() après avoir chargé l'image.

Frédéric.