EDIT ET STATIC TRANSPARENTS SUR FOND BMP

Signaler
Messages postés
104
Date d'inscription
vendredi 5 novembre 2004
Statut
Membre
Dernière intervention
11 septembre 2008
-
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/47711-edit-et-static-transparents-sur-fond-bmp

Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
13
Je ne connaissais pas cette fonction car je n'aime pas utiliser les thèmes. Je viens de voir que c'est une fonction assez récente car disponiple depuis XP. Merci de l'avoir mentionnée ça pourrait toujours servir.
Messages postés
1100
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 octobre 2012
7
J'ai trouvé, il faut utiliser DrawThemeParentBackground() et détecter les thèmes XP pour les statics.
En revance pour les edits il faut remplacer par des richedit avec WS_EX_TRANSPARENT
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
13
Bonjour Victorcoasne et merci pour la note. Désolé de répondre tard car j'étais très occupé tout ce mois de mars.
Pour ta question j'aimerais juste rappeler qu'un CheckBox est un bouton. Or, dans mon code je sous-classe un Static et un Edit. Il est donc possible d'avoir des anomalies. Si j'ai un peu de temps je ferai des test et je verrai comment y remédier.
Messages postés
1100
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 octobre 2012
7
Très bonne source, j'ai juste un problème :
J'ai essayé de mettre un checkbox à la place de ton static mais il apparaît comme noir.
As-tu une idée, pourquoi ?
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
13
Miquel75 >> Pourquoi est-tu toujours si arrogant? Il parait que c'est pour cacher ton ignorance. Toutes tes interventions sur le site sont totalement inutiles. Pas la moindre argumentation, tu parles toujours de USENET ou MSDN mais sans donner le moindre lien. Tu donnes même l'impression de quelqu'un qui se croit au dessus des autres mais qui, en réalité, comprend les choses à l'envers. Cela fait des mois qu'on attend ton premier code source sur le site pour nous apprendre à programmer. Alors qu'est-ce que tu attends? Tu as peur de t'exposer? Es-tu complexé par ce que font les autres?
Messages postés
104
Date d'inscription
vendredi 5 novembre 2004
Statut
Membre
Dernière intervention
11 septembre 2008

Hello Miquel75, j'ai cherché dans msdn mais pas trouvé, peux tu m'aiguiller ?
Sinon j'ai pas compris pourquoi le code de racpp était horrible.
Messages postés
41
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
23 avril 2009

Quel code horrible (débutant manifestement...)
Et surtout mauvaise méthode.
Voir la méthode officielle dans MSDN, notamment pour RichEdit control.
Messages postés
12
Date d'inscription
jeudi 29 juin 2006
Statut
Membre
Dernière intervention
26 août 2008

OK merci :)
J'vais déjà voir si j'peux faire ça en VB.Net sinon en C#.
:)
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
13
Merci pour la note et les commentaires.
NeoUmbrella >> Je n'ai jamais essayé avec un RichEdit. Je pense effectivement que les choses peuvent se compliquer à cause des défilements. Il faudra bien comprendre le fonctionnement interne des RichEdits, surtout comment ils sont dessinés, pour pouvoir envisager une solution.
Whyspee >> Je pense que tous les langages pour Windows sont capables d'utiliser les APIs de la GDI. Ceci s'appliquerait donc au C#. Tu peux suivre la démarche de mon code pour l'appliquer dans ton code C#.
Messages postés
12
Date d'inscription
jeudi 29 juin 2006
Statut
Membre
Dernière intervention
26 août 2008

Par contre j'ai une question : vous croyez que ça (exactement le même code), c'est faisable en C# ???
Messages postés
12
Date d'inscription
jeudi 29 juin 2006
Statut
Membre
Dernière intervention
26 août 2008

Ouais super code ! Je cherchais ça depuis longtemps mais perso je cherchais ça pour une RichTextBox puis j'y connais rien en C. :S
Mais j'vais essayer d'me débrouiller avec ça. :D
Messages postés
104
Date d'inscription
vendredi 5 novembre 2004
Statut
Membre
Dernière intervention
11 septembre 2008

Hello, merci pour ce code source.
J'aimerais savoir si tu sais faire la meme chose mais pour une richeditbox.
J'ai bien tenté d'ajouter le style WS_EX_TRANSPARENT ou de sous-classer la RichEdit et de dessiner mon bitmap sur le DC lorsque j'intercepte le message WM_ERASEBKGND mais pour les deux solutions, lorsque j'ajoute du texte a la rich ou que je fait défiler le texte avec la scrollbar, c'est saccadé.
Merci