Comment utiliser un gif anime sous 4d

UNe petite question : J’ai produit un document sous Paint Shop Pro de cinq images GIF animées.
Lorsque je clique sur ce document sous Windows, le lecteur Windows me reproduit l’animation.
Lorsque j’affiche ce même document sous 4D , je n’obtiens qu’une image statique !
Est-il possible de l’animer sous 4D ?
Comment ?
APRES CONSULTATION DU FORUM :
Je pensais simplement avoir “manqué” une commande secrète de 4D, je constate que les plus pointus se sont cassé les dents sur le sujet : l’animation GIF, ce n’est pas simple sous 4D !
En conséquence, il me reste à prier Saint Ribardière pour qu’il développe une petite routine d’utilisation des animations GIF ! Une commande de plus !
J’argumente : un GIF, cela semble un gadget, mais c’est aussi une façon légère de construire un message qui en quelques images dit quelque chose, truchement beaucoup moins mobilisateur de l’inertie mentale que ne l’est le choix de regarder une vidéo.
Un petit GIF attire l’attention parce que ça bouge et glisse une idée en une courte succession d’images (si le programmeur en a l’intention et l’idée !)
C’est un argument de plus de valorisation marketing de 4D …

Bonjour,
je place les gifs animés dans le dossier “Resources”, quand j’en ai besoin dans un formulaire je fais un glisser déposer du gif dans ce dossier vers mon formulaire. Ensuite, en mode menus créés, il s’agite.

Oui et depuis des lustres.
Aucun souci et opérationnel depuis de nombreuses versions de 4D.

Merci de ta réponse, ça marche effectivement en tant qu’icone fixe du formulaire mais pas en tant qu’image affichée et renouvelable dans le même formulaire.

Ha oui, pas cool, ça s’agite plus dans ce cas. Mais c’est “contournable” avec le formatage : mettre une image comme dit, puis sur l’événement souhaité, lire le formatage de cette image, remplacer le chemin d’image qui s’y trouve par celui que tu veux. Tu peux également jouer avec la visibilité, le déplacement, la duplication…

  //on lit le formatage de l'image statique du formulaire
$format:=OBJECT Get format(*;"Image1")
  //on modifie le chemin
$format:=Replace string($format;"images/imageX.png";"images/imageY.gif")
  //on applique
OBJECT SET FORMAT(*;"Image1";$format)

C’est quoi le but de coller un GIF dans ton formulaire ?

Un goodies pour le look ou une animation pour signifier de patienter par exemple ?

ça sert à faire passer un message

Il est possible de changer la source d’une image statique à la demande avec OBJECT SET FORMAT.

Example en v18 :

OBJECT SET FORMAT(*;"StaticPicture";"path:/RESOURCES/images/image.gif")

Un truc est de faire un Object get format pour savoir ce qu’il faut mettre dans le SET

Exemple ici

1 Like

L’animation sera un peu plus rapide quand on appellera FIXER MINUTEUR(-1).

Il faut laisser le temps au gif animé de s’exécuter.
Je ne pense pas que ce soit une bonne idée d’utiliser -1 pour le minuteur dans le cas de cette demande, ce que je ferais si je devais créer une animation fluide à partir de plusieurs images.

Une solution pour moi, mettre une zone Web, même minuscule, et sans ascenseur rien et envoyer le lien vers ton image. Bon, c’est sûr, c’est beaucoup de puissance pour une miserable gif…
Exemple va suivre.

Il y a un exemple dans le source ogtools HDI sur mon site Protée.org, dans le bouton data sheets, le logo animé du bas est un gif. C’est le formulaire “sys-help” avec une zone web et quoi mettre dans l’url…

https://www.protee.org/index.php/en/download-en/ogtools

Je pense que vous n’avez pas une idée claire de ce que représente le chargement d’une zone web. (En gros l’équivalent de lancer un browser complet) et de son impact sur la mémoire. Pour simplement changer la source de données d’une image. Ce genre de solution n’est, à mon sens, certainement pas à recommander. Je ne peux pas laisser promouvoir une telle solution.

Oh que si Vincent, je le dis : beaucoup de puissance pour une gif. Mais quand on a pas le choix…
On est donc maintenant deux à bien le préciser !

Oui, mais là, on a le choix. Je préfère m’inscrire en faux face à cette solution que de laisser les clients s’engager dans cette voie.

D’ailleurs, réellement, ce serait un must d’avoir une note technique expliquant comment sont stockés les objets en interne 4D. Et aussi de comprendre le fonctionnement des “pointeurs d’objet” que sont les références : comment ça marche ?

Je vois trop souvent des trucs comme cela :

for($i;1;Form.prefs.screen.size)

A chaque itération cela recherche dans le panier ce que peut être Form.prefs.screen.size…

Idem Non :

	$size:=Form.prefs.screen.size
	$x:=Form.prefs.screen.x
	$y:=Form.prefs.screen.y
	$w:=Form.prefs.screen.w
	$h:=Form.prefs.screen.h

Mais Oui :

	$ob_screen:=Form.prefs.screen
	$size:=$ob_screen.size
	$x:=$ob_screen.x
	$y:=$ob_screen.y
	$w:=$ob_screen.w
	$h:=$ob_screen.h

C’est évident que l’on gagne en taille de code (toutes les properties sont de l’alpha stocké).
Mais surement en rapidité, non ? Tout dépend de ce que c’est qu’une référence d’objet pour 4D…

Qu’en pensez-vous ?

En gros, si la référence d’objet est comme un pointeur, oui, à chaque ligne on ne cherche que sur la dernière property. J’ai l’impression, et je l’espère, que c’est le cas.

Bref, “Les objects inside” ça me plairait bien…

Bonjour, je suis Jean-Michel DELEGAY, initiateur de cet extra-ordinaire réaction technique à laquelle je ne m’attendais pas ! Merci à tous. Pour éclairer ma demande, je voudrais préciser que mettre un GIF me semble un mode particulier de transmission de message, apparemment non utilisé actuellement. Je le vois pour moi, jouer le rôle gestuel symbolique connexe à un texte, une image et un discours écouté en son enregistré, signifiant de façon accessoire un jugement ponctuel sur l’ensemble du message affiché, sous forme de signes animés signifiants. Je vois le GIF comme on a pris l’habitude de voir s’agiter en arrière des grand de ce monde, une personne qui traduit les paroles en langage des signes pour sourds et muets. Pour moi, un GIF serait par exemple un marteau qui enfonce un clou connexe à une déclaration de Macron !

Il faut pour cela que ce soit simple et dynamique, voire aléatoire. Mais la mise en oeuvre a plus d’épaisseur signifiante , que la mise en boucle d’un mouvement banal. Un GIF peut être une phrase symbolique simple, qui en dit long de façon concise. Porter l’index à la tempe en tournant le poignet veut dire que ce qui est affiché et entendu … c’est plutôt fou ! Même message avec un entonnoir en guise de chapeau ! J’espérai dans mon ignorance, avoir la lacune d’une instruction 4D … Merci

Ah je comprends mieux…
A ma connaissance, 4D ne gère pas les gif animées, il faut mettre du code et changer d’image source avec le sur minuteur.

Pour les discours de l’ombre, plus que le clou, je mettrai un sèche-mains électrique avec un bouton : “pour un discours politique, appuyez”. Mais je sens que ce post va aussi finir à la corbeille par “modération”. Je suis choqué.