Le projet "Accordéon d'images", est une démo basée sur l'utilisation du composant graphique GDImage en version 64-bit.
L'originalité de ce projet est qu'il ne comporte aucune fenêtre WinDev et qu'il s'appuie uniquement sur l'API bas niveau.
Ce qui permet de réduire au maximum la taille du framework WinDev, avec seulement 2 DLL(s) à savoir :
1 - vm64.dll (Machine virtuelle)
2 - std64.dll (Fonctions standard)
L'effet d'accordéon est créé en changeant l'ordre des fenêtres (z-order) et en modifiant la largeur d'affichage des bitmaps lors du survol de la souris. Pour ce faire un évènement WM_MOUSEMOVE est généré dans GDImage afin de détecter les déplacements de la souris (procédure MouseMoveCallback).
L'animation du papillon est gérée dans la procédure "FrameAnimation" en fonction de la valeur de la constante TIMER_DELAY, qui permet de passer d'un frame à l'autre en boucle.
La fenêtre principale est skinnée avec 4 lignes de code facultatives à savoir :WinLIFT est le "skin engine" qui fonctionne avec GDImage, tous deux sont compatibles DWM, ce qui veut dire que tous les affichages sont rendus en mode "composé" grâce à l'utilisation de DirectDraw et du GPU. Ce qui est très visible avec l'opacité variable utilisée pour le rendu de la barre de titre de la fenêtre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 // Optional WinLIFT section skSkinDisable(gP.imageCtrl) // Do not skin the main GDImage control. sTheme is string = EXEpath() + "AccordionSkin.sks" IF (skInitEngine (sTheme, "")) THEN skSkinWindow(hWnd, "Dock|Undock|Minimize|Maximize|Restore|Close") END
Utilisation d'une fonte privée : "pristina.ttf"
Les fontes privées sont utilisables "à la volée", sans qu'il soit nécessaire de les installer au préalable dans Windows. Ce qui permet d'être sûr, que le rendu des polices de texte est toujours le même sur tous les ordinateurs qui utilisent le projet. Au demeurant il est aussi possible d'utiliser des polices de symboles à la place du texte, ce qui est très utile pour afficher des marqueurs sur un plan.
Capture d'écran :
Cliquez sur ce lien pour télécharger le projet WD17
Note : le sous-dossier "EXE", contient le code compilé.
Pour éviter tout problème d'UAC, vous devez débloquer le ZIP avant de décompresser les fichiers, sinon le programme ne pourra pas utiliser correctement GDImage64.dll et WinLIFT64.dll.
L'autre solution est d'ajouter "www.zapsolution.com" à la liste de vos sites de confiance, vous pouvez en apprendre plus à ce sujet à partir du lien ci-dessous.
Site de confiance
...
Partager