Transparence & mobilite de controles

Soyez le premier à donner votre avis sur cette source.

Vue 7 526 fois - Téléchargée 2 113 fois

Description

Rendre plus ou moins transparent un contrôle (dans l'exemple, une image et un textbox), le bouger où l'on veut dans l'écran. C'est à dire "le rendre indépendant" du form dont il dépend, tout en gardant l'appartenance à ce dernier ...

Extrapolation de l'exemple proposé : avec Picture1 avoir un bouton qui s'éclaire (devient opaque) quand la souris passe dessus, et redevient transparent (graduation possible) au repos. C'est à la mode actuellement
Avec Picture1 et TextEssai, les bouger dans ou en dehors du form (ou bouger le form dont ils dépendent). Imaginez dans une application un tabstrip important occultant partiellement un treeview. La solution ? le mettre dehors ! et ça marche.

De ce que j'ai compris, il me semble ... :

Que "SetParent" est la CLEF qui rend possible la possibilité de jouer avec la transparence d'un objet ou de le mouvoir, indépendamment du form qui le contient . Tout se passerait comme si Windows accordait à l'objet les propriétés d'une form (pas de difficultés pour rendre transparente ou bouger celle-ci dans l'écran) ... (je ne suis pas assez calé pour imaginer autre chose, je bidouille)

qu'il est nécessaire d'employer le "SetWindowPos" pour positionner l'objet dans l'écran (équivalent d'un ZORDER) à travers la 2ème valeur "-1" (HwndTopmost). Faute de quoi si on déplace l'objet dans le form, il se placera en arrière plan de celui-ci (Si vous trouvez un meilleur moyen faites le moi savoir, je suis preneur).
Il n'y aurait ce petit problème, cet API ne serait pas nécessaire.

La transparence est gérée par "WndSetOpacity" (de Greengold)

Dans "Form_unload" on annule la mobilité de l'objet par "SetParent" . Il va de soit que cette instruction peut être placée où l'on veut, par exemple à la fermeture d'une fiche remplie (sans quitter le form)

Conclusion :


Pour terminer, un grand merci à Lumesh et Greengold pour leur travail dont je me suis inspiré

Je vous suggère de voir les sources suivants pour compléments d'info :
Lumesh : ... CONTROL DANS BARRE DE TITRE ... (avec un bon exemple de HOOK)
Greengold : EFFET TRANSPARENCE : MESSENGER ... (j'espère qu'il voudra bien me pardonner d'avoir utilisé son papillon, mais cette photo me plaisait)

Et si je n'ai pas été assez explicite, vous pouvez me contacter

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
31
Date d'inscription
vendredi 27 janvier 2012
Statut
Membre
Dernière intervention
4 octobre 2013

bonjour!
même si cette source date déjà de 2004, je la trouve très intéressante! je donne 9.75/10! pas 10/10 parce que je l'ai essayer et en effet, le textbox ne marche pas!

Mais ma question est: dans la barre des taches quand on lance l'appli, normalement il ne devrait y avoir que 2 fenêtres pour une application non? celui de vb avec un [run] à la fin, et celui de la form, mais j'ai remarqué qu'il y a une troisième fenêtre qui n'a pas de titre et qui ne s'affiche pas à l'écran! et Je me demande bien ce que c'est?
Toutes les réponses sont les bienvenues!
Messages postés
18
Date d'inscription
lundi 17 mai 2004
Statut
Membre
Dernière intervention
4 octobre 2007

merci
Messages postés
10
Date d'inscription
jeudi 18 septembre 2003
Statut
Membre
Dernière intervention
3 août 2007

Cette source est tt bonnement géniale !!!!!!!!!!!!!!!!

Je n'ai pitetre po compris tt le code, mais on ne peut pas rendre transparent un control toolbar?

NB : G essayé
Messages postés
556
Date d'inscription
lundi 6 octobre 2003
Statut
Membre
Dernière intervention
31 octobre 2019

Ok, ben merci :)

++

BILALoch
Messages postés
23
Date d'inscription
jeudi 29 avril 2004
Statut
Membre
Dernière intervention
3 mai 2005

Salut bilaloch et Bonne année

No prob pour l'utilisation et la diffusion . Au cas où tu ne les aurais pas vu , je te suggère également de voir TRANSPARENCE ... : suite et fin. Ainsi qu'une autre source : Plus transparent que lui tu meurs. Cette dernière montre une autre possibilité de transparence à mes yeux beaucoup plus simple que celle exposée ici

A ta disposition

Charles-Marie LDX Informatique
Afficher les 24 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.