ncoder
Messages postés244Date d'inscriptionvendredi 6 mai 2005StatutMembreDernière intervention 6 avril 2008
-
23 mars 2006 à 18:35
ncoder
Messages postés244Date d'inscriptionvendredi 6 mai 2005StatutMembreDernière intervention 6 avril 2008
-
27 mars 2006 à 09:31
Bonjour à tous,
Dans un de mes programmes, j'ai un RichEdit.
J'y ajoute du texte auquel je mets la couleur que je veux.
Le seul problème est que dès que je change la police de caractère de ce RichEdit, les couleurs ne s'affichent plus !!!
Voici le code :
// chargement du contrôle richedit
HINSTANCE Dll = LoadLibrary("RICHED32.DLL");
cs_Sparow
Messages postés5Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention30 mars 2006 26 mars 2006 à 18:56
Crée un CHARFORMAT2 comme expliqué dans mon dernier message et envoie le a cette fonction :
bool add_text(const HWND &hwnd/*Le HWND de ton RichEdit*/, string new_txt/*le texte à ajouter*/, CHARFORMAT2 Format/le CHARFORMAT2 créé plus haut^^*/)
{
#ifdef WIN32
SendMessage(hwnd, EM_SETSEL, (WPARAM)length, (LPARAM)length); // crée un point d'insertion
cs_max12
Messages postés1491Date d'inscriptiondimanche 19 novembre 2000StatutModérateurDernière intervention 7 juillet 2014 23 mars 2006 à 18:48
Je ne suis pas sûr, mais je crois que faire SETFONT c'est mal sur un RichEdit car il va faire comme si c'était un éditbox et effacer toutes mises en formes. Il faut utiliser un autre message (mais je ne le connais pas) regarde dans le CHARFORMAT2 te servant à mettre la couleur.
cs_Sparow
Messages postés5Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention30 mars 2006 27 mars 2006 à 02:40
Il faut aussi que tu utilises "InitCommonControls()" avt de charger "RICHED32.DLL":
InitCommonControls()
(aucun argument)
défini dans "commctrl.h"
Ca marche, j'ai tapé cette fonction (add_text() ^^) pour ajouter du texte dans un richedit multicolore d'un de mes programmes (chat)
Après, si ça va tjrs pas, balance du code :d