Fenêtre choix de police

Afficher la fenêtre standard Windows qui propose de choisir une police.

ChooseFont

Voir version :

Pas de dépendances

Télécharger :

#include <windows.h>
#include <tchar.h>
#include <stdio.h>

int main()
{
    int res;
    CHOOSEFONT  f;
    LOGFONT lf;
    ZeroMemory (&f, sizeof ( CHOOSEFONT ) );
    f.lStructSize = sizeof ( CHOOSEFONT );
    f.lpLogFont = &lf;
    f.Flags = CF_SCREENFONTS | CF_EFFECTS;
    res = ChooseFont(&f); 
    printf("code de sortie : %d\n",res);
    if (res==1)
    {
        _tprintf(_T("Nom font : %s\n"),lf.lfFaceName);
        printf("italic : %d\n",lf.lfItalic);
        printf("souligne : %d\n",lf.lfUnderline);
        printf("epaisseur(gras) : %d\n",lf.lfWeight);
        printf("taille : %d\n",f.iPointSize/10);
        printf("couleur : %X\n",f.rgbColors);
    }
    return 0;
}




Commentaires


  Comme l'exemple précédent, nous avons la la meme philosophie : une structure qu'on remplit, et hop !

  Doc pour plus d'options :
  http://msdn2.microsoft.com/en-us/library/ms646832.aspx
  http://msdn2.microsoft.com/en-us/library/ms646914.aspx
  http://msdn2.microsoft.com/en-us/library/ms533931.aspx

  f.lpLogFont = &lf;
  --> Il est important de mettre l'adresse d'une sous structure lf, qui sera remplie.

  On récupere plein d'informations, qu'on peut lire dans le programme :
  le souligné, barré, italique.
  Pour le gras, c'est un peu différent,car il peut y avoir du plus ou moins gras, on récupere donc un entier.
  (dans ce que j'ai vu, on recupere 400 quand c'est normal, 700 quand c'est gras)
  
  Pour la taille, on va récupérer un nombre qu'il faudra diviser par 10 pour retrouver ce qu'on a coché (précision au dixieme)

  Je vous laisse regarder la doc, et la structure, pour récupérer d'autres informations.