Composant pour faire un splash screen [Résolu]

Messages postés
25
Date d'inscription
samedi 8 décembre 2007
Dernière intervention
16 mars 2010
- - Dernière réponse : cs_Loda
Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Dernière intervention
30 juillet 2009
- 20 mai 2009 à 10:13
Bonjour, je ne sais pas exactement où poser ma question, mais bon je me lance...

Voilà, j'aimerais créer un petit composant qui me fait un splash screen, donc j'hériterais d'un TForm...

Mais voilà, je me pose quelques questions:

-Héritant déjà d'un TForm, peut-on encore incorporer un Timer, ainsi qu'une Image dans un composant?

  Si oui, comment?

- Peut-on garder les les propriétés du Tform qui nous interressent, et "virer" toutes les autres?

  Je sais qu'on peut remplacer et ajouter des propriété, mais supprimer les autres, ca je ne sais pas...


Voilà, c'est à peu près tout...


PS: Si vous avez une autre solution que ce que je propose, je suis preneur! (pour le faire en composant, bien sur!)
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
25
Date d'inscription
samedi 8 décembre 2007
Dernière intervention
16 mars 2010
3
Merci
Re,
J'ai trouvé ca, j'ai essayé mais sans résultat, qqu'un pourrait me dire si ca pourrait marcher avec le tuto du lien?

Merci!

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_mikevkb
Messages postés
25
Date d'inscription
samedi 8 décembre 2007
Dernière intervention
16 mars 2010
0
Merci
Up!
Personne ne peut m'aider?
Commenter la réponse de cs_mikevkb
Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Dernière intervention
30 juillet 2009
0
Merci
salut,

Pense à un compo comme à une boîte dans laquelle tu peux mettre a peu prêt n'import quoi. Une form, une image, du text, ... (voir le lien que tu as posté)

Ce que tu dois lister en premier:
- ce que tu veux que le compo fasse
- parametre en entree
- Event ? (OnStop, ...)
- methodes (start, step, Stop,  ...)

tu n'est pas obliger d'hériter de TForm, tu peux hérité de TComponent (si tu peux pouvoir l'installer dans ta bar d'outils et utiliser les mécanisme de destruction automatique) ou de TObject ( si tu veux t'affranchir "des problems" de paquet/install de compo, mais le créer à la main)

Note que pour faire un bon compo il faut être familier avec les mécanisme et la philosophie de l'orienté objet.
As-tu déjà fait une splash screen ? as-tu essaie de la faire un peu générique en lui ajoutant des méthodes/property ?
Je te recommande de profiter de la chance qu'on les dev. Delphi: Lis le code des compo de la VCL!

"Peut-on garder les les propriétés du Tform qui nous interressent, et "virer" toutes les autres?"
Non. cela irait contre la philosophie objet.
Mais tu peux l'hérité de TCustomForm et ne publier que ce qui t'interesse. (recommandé)
Aussi, tu peux hérité de TForm et surcharger les methode qui changent les propriétés pour adapter leur comportement. (pas du tout recommandé car plus long et moins propre)

Perso, je trouve que les splash screen doivent être "spécial" pour chaque application. A moins que tu ne développe une série d'outils et que tu veuille la même splash screen, je ne sias pas é quel point faire un compo est pratique (tu n'as qu'une SS par app). De toute façon, tu peux le fiare juste comme un exo, tu apprendra bcp.

bon code,

Loda

PS: jette un oeil sur les Tform avec des form non rectangulaire (bitmap avec alpha chanel ou system basé sur des region). Cela peu faire des jolies splash screen.

PS2: le boutton "réponse accepté" est utilisé pour indiqué une réponse qui résoud ton problèm (afin que l'on sache que tu n'as plus besoin d'aide sur ce sujet)

Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Commenter la réponse de cs_Loda
Messages postés
25
Date d'inscription
samedi 8 décembre 2007
Dernière intervention
16 mars 2010
0
Merci
Salut, merci pour ta réponse, j'ai suivit le lien, un peu bidouillé, et là ca marche!
J'ai hérité d'un TComponent, donc je n'ai eu à afficher que les propriétés que l'utilisateur pouvait changer, donc c'est parfait!
Sauf pour le Timer, où là j'ai utilisé la fonction sleep...

Pour ton PS2: Le lien à résolut mon problème, et comme je n'ai recu aucune autre réponse, ben il fallait bien "résoudre" le sujet!

Merci et Ciao!
Commenter la réponse de cs_mikevkb
Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Dernière intervention
30 juillet 2009
0
Merci
Timer vs Sleep

ce n'est pas (du tout) la même chose !

Un timer te permet d'appeler une méthode à un intervall donnée (par ex. pour faire une animation de progress bar) et un sleep met en pause le thread.

Pour un splash screen tu devrais utiliser un timer. (ou une méthode step() en fct du type de progress bar que tu veux.)

PS2: "j'ai essayé mais sans résultat" j'avais supposé que cela ne résolvait pas ta question.

Loda
Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Commenter la réponse de cs_Loda

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.