Choosefont Win32 API

racBoug Messages postés 2 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 6 juin 2005 - 3 juin 2005 à 12:56
racBoug Messages postés 2 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 6 juin 2005 - 6 juin 2005 à 14:51
Salut,
je programme un textpad. J'essaie de gérer la mise en couleur et l'enregistrement du texte formaté. J'ai essayé de récupérer la font appliquée avec GET_CHARFORMAT avant chargement puis d'appliquer SET_CHARFORMAT une fois le texte chargé mais cela ne fonctionne pas.
Je pense que le formatage de texte est gardé avec un objet qui doit doit être sauvé en même temps avec une propriété du fichier. Pour la couleur je n'ai pas su comment faire non plus? j'ai essayé:
static CHOOSEFONT cf;
|
|
|
CHARFORMAT chf;

chf.crTextColor = rgb(GetRValue(cf.rgbColors), GetGValue(cf.rgbColors), GetBValue(cf.rgbColors));

Je pense que comme ceci, cela devrait être fonctionnel.
Reste l'enregistrement.
Quelqu'un pourrait m'aidé?

2 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
3 juin 2005 à 13:08
chf.crTextColor = rgb(GetRValue(cf.rgbColors), GetGValue(cf.rgbColors), GetBValue(cf.rgbColors));

Plus simple, tu fais chf.crTextColor = cf.rgbColors;

COLORREF c'est rien d'autre qu'un DWORD



Tu veux enregistrer ton texte et conserver la mise en forme? Tu peux
utiliser le format RTF, regarde le message EM_STREAMOUT qui doit
permettre de faire cela
0
racBoug Messages postés 2 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 6 juin 2005
6 juin 2005 à 14:51
Pour l'enregistrement de fichier j'ai utilisé un writeFile;
l'écriture dans un stream ne permet que de transférer d'un bloc ou par morceau le texte que bufferisé, je vais vérifier s'il prend le format des charactères en compte.
Merci à toi vecchio56
0
Rejoignez-nous