OVH Cloud OVH Cloud

effet de transparence

4 réponses
Avatar
Fred
Salut

Il existe un moyen en utilisant une api windows de gerer le niveau de
transparence d'une fenetre.

Si qq'un peu m'eclairer sur le sujet ....

merci d'avance.

Fred.

4 réponses

Avatar
Pierre BOUSQUET
// Applique un effet de transparence à la fenêtre
// n peut aller de 0 à 255

SI (n<0 OU n>255) ALORS
SI EnModeTest()
Erreur("Le taux de remplissage doit être compris entre 0 et 255.")
FIN
RETOUR
FIN

GWL_EXSTYLE est un entier = -20
WS_EX_LAYERED est un entier = 0x80000
LWA_ALPHA est un entier = 2

// Récupération du style actuel de la fenêtre
nStyleActuel est un entier AppelDLL32("USER32.DLL","GetWindowLongA",Handle(Fen),n)
// Application du taux de remplissage
AppelDLL32("USER32.DLL","SetWindowLongA", Handle(Fen), GWL_EXSTYLE,
nStyleActuel+WS_EX_LAYERED)
// Effet de transparence
AppelDLL32("USER32.DLL", "SetLayeredWindowAttributes", Handle(Fen),0, n,
LWA_ALPHA)

"Fred" a écrit dans le message de
news:41765d8f$0$25713$
Salut

Il existe un moyen en utilisant une api windows de gerer le niveau de
transparence d'une fenetre.

Si qq'un peu m'eclairer sur le sujet ....

merci d'avance.

Fred.




Avatar
jacques.trepp
Pierre BOUSQUET a présenté l'énoncé suivant :
// Applique un effet de transparence à la fenêtre
// n peut aller de 0 à 255

SI (n<0 OU n>255) ALORS
SI EnModeTest()
Erreur("Le taux de remplissage doit être compris entre 0 et 255.")
FIN
RETOUR
FIN

GWL_EXSTYLE est un entier = -20
WS_EX_LAYERED est un entier = 0x80000
LWA_ALPHA est un entier = 2

// Récupération du style actuel de la fenêtre
nStyleActuel est un entier > AppelDLL32("USER32.DLL","GetWindowLongA",Handle(Fen),n)
// Application du taux de remplissage
AppelDLL32("USER32.DLL","SetWindowLongA", Handle(Fen), GWL_EXSTYLE,
nStyleActuel+WS_EX_LAYERED)
// Effet de transparence
AppelDLL32("USER32.DLL", "SetLayeredWindowAttributes", Handle(Fen),0, n,
LWA_ALPHA)

"Fred" a écrit dans le message de
news:41765d8f$0$25713$
Salut

Il existe un moyen en utilisant une api windows de gerer le niveau de
transparence d'une fenetre.

Si qq'un peu m'eclairer sur le sujet ....

merci d'avance.

Fred.





Bonjour,
tout à fait efficace :-)
peut-on l'appliquer uniquement au fond de la fenètre ?
Jacques TREPP

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com
Avatar
Phil
J'ai Windows 98 et j'obtient un message d'erreur que
SetLayeredWindowAttributes n'est pas trouvé.
Cela fonctionne-t-il seulement avec Windows 2000 et plus récent?

Cordialement,

Réal Phil

"Pierre BOUSQUET" a écrit dans le message de
news:41767cd6$0$5452$

// Applique un effet de transparence à la fenêtre
// n peut aller de 0 à 255

SI (n<0 OU n>255) ALORS
SI EnModeTest()
Erreur("Le taux de remplissage doit être compris entre 0 et 255.")
FIN
RETOUR
FIN

GWL_EXSTYLE est un entier = -20
WS_EX_LAYERED est un entier = 0x80000
LWA_ALPHA est un entier = 2

// Récupération du style actuel de la fenêtre
nStyleActuel est un entier > AppelDLL32("USER32.DLL","GetWindowLongA",Handle(Fen),n)
// Application du taux de remplissage
AppelDLL32("USER32.DLL","SetWindowLongA", Handle(Fen), GWL_EXSTYLE,
nStyleActuel+WS_EX_LAYERED)
// Effet de transparence
AppelDLL32("USER32.DLL", "SetLayeredWindowAttributes", Handle(Fen),0, n,
LWA_ALPHA)

"Fred" a écrit dans le message de
news:41765d8f$0$25713$
> Salut
>
> Il existe un moyen en utilisant une api windows de gerer le niveau de
> transparence d'une fenetre.
>
> Si qq'un peu m'eclairer sur le sujet ....
>
> merci d'avance.
>
> Fred.


Avatar
Daniel
Bonsoir,

oui, fonctionne uniquement sous 2000 et XP.

"Phil" writes:

J'ai Windows 98 et j'obtient un message d'erreur que
SetLayeredWindowAttributes n'est pas trouvé.
Cela fonctionne-t-il seulement avec Windows 2000 et plus récent?

Cordialement,

Réal Phil

"Pierre BOUSQUET" a écrit dans le message de
news:41767cd6$0$5452$
>
> // Applique un effet de transparence à la fenêtre
> // n peut aller de 0 à 255
>
> SI (n<0 OU n>255) ALORS
> SI EnModeTest()
> Erreur("Le taux de remplissage doit être compris entre 0 et 255.")
> FIN
> RETOUR
> FIN
>
> GWL_EXSTYLE est un entier = -20
> WS_EX_LAYERED est un entier = 0x80000
> LWA_ALPHA est un entier = 2
>
> // Récupération du style actuel de la fenêtre
> nStyleActuel est un entier =
> AppelDLL32("USER32.DLL","GetWindowLongA",Handle(Fen),n)
> // Application du taux de remplissage
> AppelDLL32("USER32.DLL","SetWindowLongA", Handle(Fen), GWL_EXSTYLE,
> nStyleActuel+WS_EX_LAYERED)
> // Effet de transparence
> AppelDLL32("USER32.DLL", "SetLayeredWindowAttributes", Handle(Fen),0, n,
> LWA_ALPHA)
>
> "Fred" a écrit dans le message de
> news:41765d8f$0$25713$
> > Salut
> >
> > Il existe un moyen en utilisant une api windows de gerer le niveau de
> > transparence d'une fenetre.
> >
> > Si qq'un peu m'eclairer sur le sujet ....
> >
> > merci d'avance.
> >
> > Fred.





--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)