Je vous pose aujourd'hui cette question apr=E8s =EAtre pass=E9 par des
forums tels que ceux de Comment=E7amarche et autres. Personne n'a jamais
pu r=E9pondre =E0 ma question ou m'a toujours redirig=E9 vers des liens
inutiles.
Je suis d=E9j=E0 all=E9 voir du cot=E9 de msdn, et n'ai rien trouv=E9 de
satisfaisant.
Aussi voici ma question : y-a-t-il un moyen de rendre le fond d'une
fen=EAtre cr=E9e avec une API WIN32 transparent? Qui plus est, sans faire
de copie du background? Un vrai transparent, donc.
Par ailleurs, j'ai une autre question : comment fait-on pour enlever
la console lorsque le programme ouvre la fen=EAtre?
Aussi voici ma question : y-a-t-il un moyen de rendre le fond d'une fenêtre crée avec une API WIN32 transparent? Qui plus est, sans faire de copie du background? Un vrai transparent, donc.
Par ailleurs, j'ai une autre question : comment fait-on pour enlever la console lorsque le programme ouvre la fenêtre?
Chosir Subsystem:Windows au lieu de Subsystem:Console dans propriétés du Linker de VS...
On 25 sep, 22:52, maximeou...@laposte.net wrote:
Aussi voici ma question : y-a-t-il un moyen de rendre le fond d'une
fenêtre crée avec une API WIN32 transparent? Qui plus est, sans faire
de copie du background? Un vrai transparent, donc.
Avec SetLayeredWindowAttributes()
http://msdn.microsoft.com/en-us/library/ms997507.aspx
ou SetWindowRgn() sur la partie cliente par exemple.
(ou D3D http://www.dhpoware.com/demos/d3dLayeredWindows.html)
Par ailleurs, j'ai une autre question : comment fait-on pour enlever
la console lorsque le programme ouvre la fenêtre?
Chosir Subsystem:Windows au lieu de Subsystem:Console dans propriétés
du Linker de VS...
Aussi voici ma question : y-a-t-il un moyen de rendre le fond d'une fenêtre crée avec une API WIN32 transparent? Qui plus est, sans faire de copie du background? Un vrai transparent, donc.
> Le compilateur me dit qu'il ne connaît pas "LWA_COLORKEY" ni > "LWA_bALPHA"...
Le compilateur ne reconnaît pas non plus les fonctions "UpdateLayeredWindow" et "SetLayeredWindowAttributes" ce qui m'empêche de changer le ton de transparence... Par ailleurs, je n'arrive pas à utiliser la structure "BLENDFUNCTION".
P.S. : En utilisant "SetWindowLong" poue mettre un fond totalement transparent, les images affichées dans la zone client seront-elles transparentes? Invisibles?
On 26 sep, 20:19, domi <d...@domi.com> wrote:
Maxime wrote:
>> Avec SetLayeredWindowAttributes()http://msdn.microsoft.com/en-us/libra ry/ms997507.aspx
> Le compilateur me dit qu'il ne connaît pas "LWA_COLORKEY" ni
> "LWA_bALPHA"...
Le compilateur ne reconnaît pas non plus les fonctions
"UpdateLayeredWindow" et "SetLayeredWindowAttributes" ce qui m'empêche
de changer le ton de transparence... Par ailleurs, je n'arrive pas à
utiliser la structure "BLENDFUNCTION".
P.S. : En utilisant "SetWindowLong" poue mettre un fond totalement
transparent, les images affichées dans la zone client seront-elles
transparentes? Invisibles?
> Le compilateur me dit qu'il ne connaît pas "LWA_COLORKEY" ni > "LWA_bALPHA"...
Le compilateur ne reconnaît pas non plus les fonctions "UpdateLayeredWindow" et "SetLayeredWindowAttributes" ce qui m'empêche de changer le ton de transparence... Par ailleurs, je n'arrive pas à utiliser la structure "BLENDFUNCTION".
P.S. : En utilisant "SetWindowLong" poue mettre un fond totalement transparent, les images affichées dans la zone client seront-elles transparentes? Invisibles?
Le compilateur me dit qu'il ne connaît pas "LWA_COLORKEY" ni "LWA_bALPHA"...
Dans winuser.h (SDK à jour), il y a : #if(_WIN32_WINNT >= 0x0500) ...
Donc il faut au moins : #define _WIN32_WINNT 0x0500
Maxime
> Dans winuser.h (SDK à jour), il y a : #if(_WIN32_WINNT >= 0x0500) ...
Donc il faut au moins : #define _WIN32_WINNT 0x0500
Merci beaucoup, maintenant, ça marche! J'ai, par contre, remarqué que même la barre de titre était devenu transparente... Il faut que j'utilise un WindowRgn pour créer une région particulière pour la transparence, c'est bien ça?
> Dans winuser.h (SDK à jour), il y a :
#if(_WIN32_WINNT >= 0x0500)
...
Donc il faut au moins :
#define _WIN32_WINNT 0x0500
Merci beaucoup, maintenant, ça marche!
J'ai, par contre, remarqué que même la barre de titre était devenu
transparente... Il faut que j'utilise un WindowRgn pour créer une
région particulière pour la transparence, c'est bien ça?
> Dans winuser.h (SDK à jour), il y a : #if(_WIN32_WINNT >= 0x0500) ...
Donc il faut au moins : #define _WIN32_WINNT 0x0500
Merci beaucoup, maintenant, ça marche! J'ai, par contre, remarqué que même la barre de titre était devenu transparente... Il faut que j'utilise un WindowRgn pour créer une région particulière pour la transparence, c'est bien ça?
Maxime
(Désolé pour le plus ou moins double post, je n'ai pas trouvé comment l'éditer.)
Le problème est que l'image que je charge à l'intérieur est transparente, elle aussi, même en bitmap... Ou alors je défini un rectangle où elle se trouve et j'enlève la transparence?
(Désolé pour le plus ou moins double post, je n'ai pas trouvé comment
l'éditer.)
Le problème est que l'image que je charge à l'intérieur est
transparente, elle aussi, même en bitmap... Ou alors je défini un
rectangle où elle se trouve et j'enlève la transparence?
(Désolé pour le plus ou moins double post, je n'ai pas trouvé comment l'éditer.)
Le problème est que l'image que je charge à l'intérieur est transparente, elle aussi, même en bitmap... Ou alors je défini un rectangle où elle se trouve et j'enlève la transparence?
Laurent
"Maxime" a écrit dans le message de news:
Le problème est que l'image que je charge à l'intérieur est transparente, elle aussi, même en bitmap... Ou alors je défini un rectangle où elle se trouve et j'enlève la transparence?
Si tu veux juste certaines parties transparentes, tu peux le faire avec des régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
"Maxime" <maximeoudot@laposte.net> a écrit dans le message de news:
d45f798f-aaa5-4383-9c14-6d604f4c713a@l34g2000vba.googlegroups.com...
Le problème est que l'image que je charge à l'intérieur est
transparente, elle aussi, même en bitmap... Ou alors je défini un
rectangle où elle se trouve et j'enlève la transparence?
Si tu veux juste certaines parties transparentes, tu peux le faire avec des
régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
Le problème est que l'image que je charge à l'intérieur est transparente, elle aussi, même en bitmap... Ou alors je défini un rectangle où elle se trouve et j'enlève la transparence?
Si tu veux juste certaines parties transparentes, tu peux le faire avec des régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
Maxime
> Si tu veux juste certaines parties transparentes, tu peux le faire avec d es régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
Est-ce que celà marcherai aussi si je crée une région contenant l'image et que je met cette région non transparente?
> Si tu veux juste certaines parties transparentes, tu peux le faire avec d es
régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
Est-ce que celà marcherai aussi si je crée une région contenant
l'image et que je met cette région non transparente?
> Si tu veux juste certaines parties transparentes, tu peux le faire avec d es régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
Est-ce que celà marcherai aussi si je crée une région contenant l'image et que je met cette région non transparente?
marc
On 28 sep, 12:05, Maxime wrote:
> Si tu veux juste certaines parties transparentes, tu peux le faire avec des > régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
Est-ce que celà marcherai aussi si je crée une région contenant l'image et que je met cette région non transparente?
Oui, c'est assez classique de créer une région à partir d'une bitmap (le fond d'une couleur RGB donnée étant mis transparent)
On 28 sep, 12:05, Maxime <maximeou...@laposte.net> wrote:
> Si tu veux juste certaines parties transparentes, tu peux le faire avec des
> régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
Est-ce que celà marcherai aussi si je crée une région contenant
l'image et que je met cette région non transparente?
Oui, c'est assez classique de créer une région à partir d'une bitmap
(le fond d'une couleur RGB donnée étant mis transparent)
> Si tu veux juste certaines parties transparentes, tu peux le faire avec des > régions que tu combines avec CombineRgn() et donc SetWindowRgn() à la fin
Est-ce que celà marcherai aussi si je crée une région contenant l'image et que je met cette région non transparente?
Oui, c'est assez classique de créer une région à partir d'une bitmap (le fond d'une couleur RGB donnée étant mis transparent)