Apparition progressive d'un form

Soyez le premier à donner votre avis sur cette source.

Vue 23 446 fois - Téléchargée 2 755 fois

Description

Voici une classe qui va vous permettre de faire apparaitre progressivement un Form via la transparance. Ce qui peut faire un bel effet pour le splash screen d'une application.

La classe s'appelle FFader, voici un petit exemple.

Source / Exemple :


FFader fade = new FFader(this); // (this étant le form sur lequel ont veut appliquer l'effet)
fade.duration = 2000;
fade.start();

Conclusion :


La classe est documentée avec les commentaires propres aux specs de Visual Studio.

Vous pouvez également spécifier en plus de la durée :
- l'opacité au départ de l'effet
- l'opacité à la fin
- un évenement éventuel à déclancher après que l'effet se soit terminé. Après une durée pouvant être déterminée.

Dans le ZIP se trouve également une application (sources & exe) qui pourra vous servir d'exemple d'utilisation plus poussé. Il s'agit justement d'un splash screen (avec un bout de mon fond d'écran ;)
N'hésitez pas à apporter vos commentaires.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
16
Date d'inscription
jeudi 18 octobre 2007
Statut
Membre
Dernière intervention
29 juillet 2008

merci pour cette source, c'est ce que je cherchait.

juste lors du demarage du splash, il fait un leger tic avant qu'il commence l'effet du fader. pense a initialiser les composants du splashScreen juste avant le demarage du fader ;)

public splash()
{
FFader f = new FFader(this, 1200);

f.TimeToWait = 2000;
f.atEnd += new System.EventHandler(this.next);

InitializeComponent(); // juste ici mon ami
f.start();
}

appart ca c'est nikel ;) 9/10

Hamza
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
66
si si...

(ouvert même avec l'utilitaire inclut dans Windows Xp...)
Messages postés
223
Date d'inscription
mardi 27 mai 2003
Statut
Membre
Dernière intervention
3 juin 2019
1
le Zip ne se decompresse pas
Messages postés
8
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
15 février 2009

Salut,

Lorsque je telecharge la source j'ouvre le projet avec c# builder et j ai un message d'erreur lors de la compilation.
"Could not find 'splash' specified for Main Method."
Quelqu'un a t'il une idée ?
D'avance merci
Nexx
Messages postés
5
Date d'inscription
jeudi 17 avril 2003
Statut
Membre
Dernière intervention
24 novembre 2005

J'ai lu sur un site, malheureusement j'en ai perdu la source mais c'est pas grave, que le Timer que fourni Microsoft n'est pas tout à fait asynchrome.

Ce que je veux dire, c'est que si le CPU est surchargée et bien le Timer décide de faire moins de Tick. Ce qui explique, dans certains cas, un manque de fluidité.

Pour remédier au problème, 2 solutions :
1) il existe un certain autre Timer utilisé dans le multimédia, les trucs en 3D qui ferait le travail.
2) s'agit de s'asseoir et trouver une manière avec les Thread de faire fonctionner le tout.

Pour bien illustrer le problème, voici le code source que j'utilise pour ralentir le processus :

// Pause
int debut = Environment.TickCount;
while (Environment.TickCount < debut + 5000);
/*Décommentez la prochaine ligne et enlevez le ; à la
fin du while et vous
remarquerez que le fondu se réalise bien */
//Application.DoEvents();
Afficher les 6 commentaires

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.