[dev-c++] fenetre transparente et non rectangulaire

Soyez le premier à donner votre avis sur cette source.

Vue 11 775 fois - Téléchargée 1 310 fois

Description

Une fenêtre qui n'est pas comme les autres : elle n'est pas rectangulaire.
C'est une tâche qui débarque sur votre écran.
Plus sérieusement les API Windows sont utilisés pour afficher la fenêtre.
Grâce aux fameuses "Régions" on peut afficher les pixels non transparents.
L'image fond.bmp est l'image de fond où le noir est transparent.
Compilé avec Dev-C++ mais devrait passer avec d'autres compilateurs.

Source / Exemple :


Il y a un zip avec l'exécutable dans un autre zip et le même exécutable mais a renommer dans le répertoire.

Conclusion :


Commentez, notez et indiquez moi si vous trouvez des astuces.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
29
Date d'inscription
lundi 30 juin 2003
Statut
Membre
Dernière intervention
25 juillet 2014
2
merci beaucoups si quelqu'un trouve la solution pour la faire semi transparente
Messages postés
29
Date d'inscription
lundi 30 juin 2003
Statut
Membre
Dernière intervention
25 juillet 2014
2
comment faire pour la rendre semi-transparente ? avec l'api 32 SetWindowLong(hwnd,GWL_EXSTYLE,GetWindowLong(hwnd, GWL_EXSTYLE) | WS_EX_LAYERED );
// 70% alpha
m_pSetLayeredWindowAttributes(hwnd, 0, (255 * 40) / 100, 0x00000002);

mais ça ne marche pas.
Messages postés
66
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 octobre 2009

Excellente source !
Il y a longtemps que je n'avais pas vu une source aussi bien commentée et construite !
Exactement ce qu'il me fallait ; un mot : BRAVO !!
Messages postés
452
Date d'inscription
jeudi 4 décembre 2003
Statut
Membre
Dernière intervention
19 décembre 2008
10
Merci pour cette trouvaille, ça faisait un moment que je cherchais comment faire.
Ma fonction plantait de temps en temps, des rayures noires s'affichaient sur certains ordinateurs au lieu d'un fond transparent.
Reste plus qu'à comparer pour trouver l'origine de l'erreur.
Messages postés
1100
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 octobre 2012
5
Bonjour,
En effet j'aurais pu utiliser cela mais sur le windows 9x ça n'aurait pas marché.
Le but est aussi de faire un programme "universel sur les windows".
Bonne programmation
@++
Afficher les 10 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.