1. HxD Hex Editor 1.6.1 (289 fois)
2. Open Office 2.2.1 (253 fois)
3. Delphi 6 (207 fois)
4. Windows Live Messenger (160 fois)
5. FireFox 2.0.0.12 (122 fois)
21 Juil 2008
TransfertJet : la nouvelle génération de transfert sans fil haut débit
15 Juil 2008
iPhone 3G : déjà 1 millions d'exemplaires vendus - Rétrospective du lancement mondial
11 Juil 2008
L'iPhone 3G déjà cracké !
07 Juil 2008
« Where the hell is Matt ? » la nouvelle star du Web !
02 Juil 2008
Windows XP est retiré de la vente - Tour des autres Systèmes d'Exploitation
Google : le maître des noms de domaines
La nouvelle version de GMail en images !
Barème de rémunération pour les disques durs multimédias
Afficher la date et heure du jour
Alignement de séquences d'ADN
TatNum : gestion des images avec Qt
À votre tour, devenez partenaire de mx-dev.net.
Informations sur la source : |
| Auteur : florenth |
| Catégorie : Manipulation d'images |
| Niveau : Débutant |
| Posté le : 25 Février 2008 à 15h11 |
Pour faire joli, on peut avoir besoin d'effectuer un fondu lorsque :
1- Une fiche se ferme (ou s'ouvre)
2- On change de page d'un TPageControl ou TTabControl
3- On modifie les propriétés Visible de certains composants, ce qui modifie l'aspect de la fenêtre.
Pour le cas 1, on sait faire (AlphaBlendValue et compagnie) mais pour les deux autres, c'est pas pareil.
Voici donc un code tout simple qui permet de le faire !
Utilisation :
- Créer un TFrmBlend avec "nil" comme propriétaire.
- Appeler la méthode SetBlendControl() ou SetBlendRect() pour définir la zone qui va nécessiter un fondu.
- Changer les propriétés de vos contrôles (Visible, Parent, etc... suivant les besoins).
- Appeler Blend(durée_du_fondu).
- Admirer !
Pour le code et un exemple ----> zip.
procedure TFrmDemo.PageControlChanging(Sender: TObject;
var AllowChange: Boolean);
begin
BlendFrm := TFrmBlend.Create(nil);
BlendFrm.SetBlendControl(PageControl);
end;
procedure TFrmDemo.PageControlChange(Sender: TObject);
begin
BlendFrm.Blend(400);
end;
Conclusion :
Limitations: faut pas déplacer la fiche active pendant le fondu sinon ça fait très moche ! Donc ne pas mettre un temps de fondu trop important (400 ms semble un bon compromis).
Fichier Source
6 fichiers 24,88 Ko
Blending.dfm 664 Octets Blending.pas 2,37 Ko BlendingDemo.dpr 214 Octets Directives.inc 2,16 Ko UFrmBlendDemo.dfm 44,33 Ko UFrmBlendDemo.pas 919 Octets