Fiche transparente sous Delphi 6

Fermé
turblad Messages postés 36 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 16 septembre 2009 - 10 juil. 2008 à 16:24
turblad Messages postés 36 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 16 septembre 2009 - 11 juil. 2008 à 12:14
Bonjour,
Mon problème est de réaliser un splashscreen d'une forme quelconque.
j'avais jadis un composant qui permettait d'obtenir très facilement cet effet grâce à une propriété "mask" où il suffisait de mettre un bmp de la taille de la fiche, noir et blanc, où le noir devenait transparent. C'était simple et efficace (je ne suis qu'un petit amateur débutant). Malheureusement, j'ai perdu cet élément lors d'un crash physique de mon disque dur.
J'ai beau chercher depuis deux jours à travers la toile et questionner Google sous toutes les formes, impossible de remettre la main dessus. J'ai certes trouvé des procédures allant vers le même résultat, mais c'est lourd et exige beaucoup de code.
Alors si un passionné possède ce composant magique (compatible Delphi 6) ou connait une adresse de téléchargement, je suis preneur.
Merci d'avance
A voir également:

1 réponse

fahim0788 Messages postés 111 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 19 décembre 2011 10
11 juil. 2008 à 03:12
salut, Pour réaliser cela c'est très simple suis les étapes suivantes:

- Il faut créer deux fiches la première Form1 (fenêtre principale) et la deuxième Form2 (le splashscreen)

- Modifie les propriété de Form2 suivantes:

Color : clBlack
TransparentColor : True
TransparentColorValue : clBlack

(clblack est la couleur qui sera transparente, c'est la couleur de Form2 ici, pour rendre form2 transparente)

- Dans Form2 tu insère:

une image (bitmap à l'aide du compousant image de la palette supplément)
un timer (tu mets sa propriété interval à 3000 càd trois secondes)

- Double clique sur timer1 (que tu as insèré) et tu ecrit le code

close;

{cela veut dire que form2 se ferme après 3 sconde}

- Tu retourne à form1 et tu déclare( Startup:boolean=true; ) comme variable

- Tu fais un double clique sur l'évenement OnActivate et tu ecris le code:

if startup then
begin
startup:=false;
form2.show;
end;

si tu as un problème informe moi svp. BONNE CHANCE
1
turblad Messages postés 36 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 16 septembre 2009
11 juil. 2008 à 12:14
Bonjour
Merci de cette réponse rapide et efficace.
Chose curieuse, j'avais remarqué cette possibilité lors de mes tests récents de Turbo-Delphi Explorer (version gratuite). Ayant trouvé cette version trop complexe (ou, et trop différente. Et puis c'est assez difficile de découvrir les subtilités de l'informatique en autodidacte à 60 ans), je suis revenu à mon vieux Delphi 6 plus que largement suffisant pour mes petits amusements. Eh bien, je n'avais jamais remarqué la présence de cette propriété dans Delphi 6 !
Cependant, ce système fonctionne en tout ou rien or, bien que ne l'ayant pas utilisée, il me semble (je ne certifie pas) que le composant que j'évoquais dans ma demande, permettait la semi-transparence (type couche alpha dans Photoshop) de façon à, par exemple mettre une petite ombre élégante sous les bords de la fiche.
Bon, sans doute est-ce mon ancien métier de photographe qui me rends pinailleur sur l'esthétique. Après tout, les splashscreens d'Adobe, eux, ont une ombre.
Ta réponse n'en est pas moins bonne. Je l'ai déjà mise en oeuvre.
Merci encore.
Cependant, je suis toujours preneur de la solution sophistiquée.
0