Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CRÉEZ VOTRE PROPRE SLIDESHOW (DIAPORAMA) FACILEMENT


Information sur la source

Catégorie :Graphique Classé sous : animatewindow, slideshow, diaporama, transition, bitmap Niveau : Débutant Date de création : 13/08/2006 Date de mise à jour : 14/08/2006 15:33:18 Vu / téléchargé: 8 807 / 911

Note :
8,75 / 10 - par 4 personnes
8,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Voici une petite source qui vous montre comment faire un SlideShow où Diaporama avec très peut de code

L'idée m'est venue après avoir vu une source ici sur AnimateWindow, incomplète et qui à été supprimé ....
Je me suis dit que ça pouvait être une bonne utilisation (le Diaporama) pour AnimateWindow

Le projet utilise l'unité UPath (Fournie dans le zip)
pour plus de renseignement sur cette unité suivre ce lien :
http://www.delphifr.com/codes/UTILITAIRE-ACCEDEZ-FACILEMENT-REPERTOIRES-SYSTEME-PEUT-IMPORTE-LEURS_39080.aspx

il n'y a aucun composant à installer
j'ai fait attention à ce que le code soit facilement réutilisable
et il a ét testé sous D4 et D2005

Je connais quelqu'un qui l'attend depuis longtemps :-)

Utilisation:
le programme pointe dès le départ sur le répertoire "Mes Images" de Windows (même si vous avez changer son emplacement dans la BDR)
Sinon vous pouvez changer le répertoire en cliquant sur le bouton "Change Dir"
où sélectionner une série d'images (2 minimum) en cliquant sur "Select Image"
Appuyez sur "Start" pour démarrer le diaporama
"  "    "  "F6"    pour passer en plein écran et pour revenir
"  "    "  "Échap" pour quitter l'application

Le reste se passe de commentaires :-)

@+
 

Conclusion

Deux problèmes connues :

Quand on change le mode d'affichage (Mosaïc, Stretch...) où quand on passe du mode normal au mode plein écran (F6)
l'actualisation de l'image ne se fait pas de suite

Et le Type AW_BLEND de AnimateWindow ne fonctionne pas avec les Panel (où j'ai pas trouvé comment) l'image s'affiche en instantané
C'est pourquoi cette possibilité est en commentaire dans le code.

Si quelqu'un à une idée pour l'un où l'autre problème (voir les deux) qu'il n'hésite pas :-)

Le fait d'avoir dérivé TcrSlideShow de TObject n'est peut être pas la bonne méthode ?
Dites moi ce que vous en pensez ...
Merci à Matt pour les Testes éffectués
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

13 août 2006 19:37:05 :
Nouvelle version : Sur les conseils de Florenth : TcrImgPanel hérite directement de TCustomControl TcrSlideShow hérite de TComponent avec possibilité de l'installer (.DPK non fourni) Autres changements : Résolution du problème de rafraîchissement C'est justement un Refresh qui manquait (en fait deux) :-) L'utilisation reste la même pas de changement ... Le problème de AW_BLEND perciste toujours
13 août 2006 22:47:49 :
Ajout d'une propriété Color pour changer le fond du SlideShow -- Ajout d'un controle de taille pour l'affichage (psMosaic) --
14 août 2006 15:33:18 :
Correction du Bug sur AW_Blend -****- Problème règlé par l'ajout de ma propre fonction DoBlend (Interne à DoAnimate) -****- Sur les conseils de Florenth : LabelName est remplacé par une propriété ImageName -****- Et un évenement OnImageChange à été ajouté -****- Et d'autres petites modifications proposées par Florenth

Commentaires et avis

signaler à un administrateur
Commentaire de Matt 261 le 13/08/2006 10:02:35

Tout simplement excellent ! Les effets sont super bien fait... Bravo !

signaler à un administrateur
Commentaire de Matt 261 le 13/08/2006 12:33:36

>>>AnimateWindow "vole" la main au programme

ca a toujours été le gros problème d'AnimateWindow... Dommage...

signaler à un administrateur
Commentaire de cirec le 13/08/2006 16:24:05 administrateur CS

Merci pour vos messages
ça fait plisir ;-)

"Pourquoi dériver TcrImgPanel de TCustomPanel alors que TcustomControl me parait mieux. Je n'ai pas testé mais peut être quel AW_BLEND fonctionne avec TCustomControl."

En fait je ne me suis pas posé la question.
L'idée m'est venue d'essayer avec un panel, ça à fonctionner, j'ai ajouté l'image et voilà TcrImgPanel est né :-)

Mais je vais explorer cette piste

"Disons que tu aurais pu le faire dériver de TComponent ce qui aurant permi un mode design-time "
Ben disons que comme beaucoup de membres n'aiment pas forcément devoir installer un composant de plus sur leur palette (qui est déjà bien remplie)...

Et comme la mise en oeuvre est facile :
SlideShow := TcrSlideShow.Create(Panel1);
SlideShow.Start;
Dans la majorité des cas ça suffit !
Bien sur il ne faut pas oublier de faire :
SlideShow.Free;

Donc voilà pourquoi j'ai fait le choix de TObject

"- ParentBackground n'existe pas sous D6"
Je ne le savais pas ... je corrigerais donc ceci
"- Je n'ai pas la constante BIF_NEWDIALOGSTYLE (en l'enlevant, ça fonctionne parfaitement)"
Donc si j'ai bien compris tu as D6 et BIF_NEWDIALOGSTYLE n'y est pas déclaré ?
Par contre il ne faut pas le retirer ... ici ça ne pose pas de problème regarde l'autre source que j'ai déposé ici (je corrigerais également ceci):
http://www.delphifr.com/codes/UTILITAIRE-ACCEDEZ-FACILEMENT-REPERTOIRES-SYSTEME-PEUT-IMPORTE-LEURS_39080.aspx

"- StretchDraw, c'est bof. StretchBlt, c'est mieux (un peu plus lent par contre). Le best étant les méthodes de la librairie GraphicEx."
Oui c'est vrai c'est bof (quoi que chez moi avec mes images ça le fait :-))

Mais je corrigerais ceci :-)
Bon ça fait déjà du boulot

Merci encore
@+
Cirec

signaler à un administrateur
Commentaire de cirec le 13/08/2006 19:52:07 administrateur CS

[Wolf_Hunter]
Comme toujours le loup rôde ...
Quand on ne comprend pas la programmation on ne peut pas apprécier ...

Si c'est pas du ("Image1.Left := Image1.Left + 1") c'est fini ... tu paniques c'est trop compliqué !!!
[/Wolf_Hunter]

Sinon nouvelle version ...
Correction du défaut de rafraîchissement
et sur les conseils de Florenth :
TcrImgPanel hérite directement de TCustomControl
TcrSlideShow hérite de TComponent avec possibilité de l'installer
le fichier DPK n'est pas fournis (je n'ai pas testé l'installation)
Suppression du StretchDraw remplacé StretchBlt en Halfton (Merci à DrJérome pour l'astuce)

voilà testez et ...
@+
Cirec

signaler à un administrateur
Commentaire de cirec le 13/08/2006 21:35:27 administrateur CS

argh!!!
j'avais pas pensé à aller voir la MSDN ...
Dommage pour AW_BLEND mais bon il faudra bien faire avec ...

Sinon as-tu essayé depuis ?

signaler à un administrateur
Commentaire de cirec le 13/08/2006 22:58:26 administrateur CS

C'est corrigé :-)
(En faite ça ne marchait pas c'est en reconstruisant que je m'en suis apperçu j'avais juste fait Run "F9")

par contre pour bug
j'ai pas ce phénomène chez moi ?
Peut être ta carte vidéo ?
Essaye un DoubleBuffered !

C'est avec la nouvelle version que tu as ce souci ?

signaler à un administrateur
Commentaire de cirec le 14/08/2006 16:04:27 administrateur CS

Voilà j'ai presque tout fait sauf "aOwner as TWinControl"
D'ailleurs l'aide de Delphi dit ceci :

Description
Les contrôles fenêtrés sont des contrôles qui :
Peuvent recevoir la focalisation pendant l'exécution de l'application.
Les autres contrôles peuvent afficher des données, mais l'utilisateur ne peut interagir avec un contrôle que
s'il s'agit d'un contrôle fenêtré.
Peuvent contenir d'autres contrôles.
Un contrôle contenant d'autres contrôles est un parent. Seul un contrôle fenêtré peut être le parent d'un ou
de plusieurs contrôles enfant.
Disposent d'un handle de fenêtre.
Un handle de fenêtre est l'identificateur fourni pour une fenêtre par Windows. Les contrôles fenêtrés peuvent
représenter des fenêtres contrôle standard fournies par l'environnement Windows ou des fenêtres personnalisées
définies par l'application.

Donc je me dit à partir du moment ou tu peux poser le composant celui qui l'accèpte est forcément un TWinControl ou enfant ?

Et de plus la méthode que tu proposes limite l'utilisation à un Panel alors que la je peut le mettre ailleurs (Form par Ex.)
Je vais donc encore réfléchir à ce problème ...

Pour la création avec Nil c'est une habitude que j'ai pris ce que je crée manuellement  je le libère manuellement (bon c'était pas faux mais inutile)

En ce qui concerne TPath :
Comme le constructeur et le Destructeur ne sont pas surchargés et qu'ils sont vide au départ
je n'ai rien mis...
Et dans les sources de Delphi j'ai vu des utilisations identiques donc ...

Sinon pour le bug d'affichage que tu as avec les Slides ... ce doit être chez toi, moi j'ai pas ce phénomène ... jette ton jouet et achète toi un vrai PC ... lol
Non ... un peut de sérieux ... m'enfin !!!

Ah oui j'oubliais ...
J'ai déclarer une Fonction externe AlphaBlend
qui existe depuis D4 dans Windows.pas mais comme MS à fait des changement dans les Dll système (entre les versions) aujourd'hui cette fonction n'est plus accessible depuis D4 et peut être d'autres versions
Avant AlphaBlend se trouvait dans "gdi32.dll" et maintenant elle se trouve dans "msimg32.dll" ?
Ceci explique pourquoi avoir re-déclarer cette fonction

ps : Merci beaucoup à Florenth pour l'intérêt que tu portes à cette source.

Voilà amusez-vous bien
@+
Cirec

signaler à un administrateur
Commentaire de cirec le 14/08/2006 19:33:30 administrateur CS

Et que penses-tu de la procedure DoBlend ?

Merci
@+

signaler à un administrateur
Commentaire de mcapp le 15/08/2006 02:23:56

Encore un projet qui est très intéressant à étudier.

Et d'excellente qualité !

Une suggestion : dans la capture, il faudrait présenter une véritable photo (paysage par exemple) sinon elle n'incite pas trop à s'y intéresser avec la capture que tu présentes actuellement.

Je mets 10 bien sûr !

signaler à un administrateur
Commentaire de ThWilliam le 17/08/2006 18:10:08

Salut Cirec,

je n'ai pas eu trop le temps de voir ton code, mais le résultat est magnifique. Bravo à toi.

Thierry

signaler à un administrateur
Commentaire de Francky23012301 le 22/08/2006 16:58:04

Salut Cirec,

Bien Bien tout ca : une visionneuse avec des chtit effets visuels bien sympathique.

Code : Propre et fluide.

Allez un petit 10/10.

signaler à un administrateur
Commentaire de Gecko62 le 27/08/2006 18:54:01

Superbe source

Bravo et merci

Tout comme Francky23012301, je mets un 10 / 10

signaler à un administrateur
Commentaire de cincap le 21/10/2007 10:10:22

Bonjour à toutes et à tous,

@ Cirec, bravo pour ce logiciel qui pourra être personnalisé.

Au démarrage de l'application, je pense que ce serait une idée de ne pas avoir accès aux boutons 'Start, Stop et reset) avant d'avoir choisis les photos.

Par contre, après un 1er diaporama et si on veut changer de directory mais qu'après avoir ouvert le dialogue on décide d'annuler, il y a un sérieux bug.

@ Florent, décidément tu maitrises sérieusement le bitmap.

@+,

Cincap

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

dessin sur un bitmap [ par jlg75 ] J'ai commencé un petit prog de dessin pour mes débuts en DELPHI.Je dessine sur un bitmap (feuille blanche pour l'instant),chargé dans une TImage. J'ut Convertir un bitmap en icone [ par sebastienbro ] J'aimerai savoir comment convertir un bitmap, contenu dans une Timage, en icone Convetir une imag en Bitmap [ par sebastienbro ] Je veux convertirune image en ICO, mais il me met une erreur : Image icône incorrectAidez moi !!!!! Bitmap, tableau de stockage .... [ par dami ] Bonjour a tous. Pour les besoins d'OpenGL, j'ai besoin de transformer mon Jpeg en BMP puis de stocker le BMP sous forme de tableau. J'ai récupéré et a Contrôle de saisie d'un Bitmap [ par lugo ] Bonjour à tous,J'utilise ce bout de code pour contrôler si l'opérateur a bien faitune sélection d'une Bitmap et qu'elle est bien présente dans la pres extraire les composantes R, G, B d'un bitmap 16 bits [ par ericamiens ] bonjour, j'aimerais donc extraire ces composantes mais les fonctions GetRValue, GetGValue et GetBValue attendent un RGB (32 bits) en entrée. ça foncti Mettre un Bitmap en fond de form depuis une ressource sur une Dialog en ressource aussi [ par RocketSpawn ] Déjà, merci de vous interresser à mon problèmes ! :)Donc en fait, j'ai en ressource, une Dialog, un icon et un Bitmap, et je voudrais savoir comment m Mettre le Handle du bureau dans une image jpg. [ par norton ] Hello quand je compile ceci delphi me dit que JPG:TJPEGImage n'est pas déclaré. (Undeclared identifier :'TJPEGImage') sur ma version j'ai delphi 6 ve viendez voir çà !!!! [ par TheWhiteShadow ] Voici mon prb : Est-ce qu'on peut écire la mm chose en 5 lignes : ???procedure TForm1.draw(x,y: integer; state : string);begin case truc_bidule of os bloqué en convertissant bmp>jpg [ par crogger ] Bonjour, je fais de la capture d ecran que je convertit en jpg, et que je transmet en stream avec le composant NMSTRM de fastnet pour recuperer a dist


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,733 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.