IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++/CLI Discussion :

[C#/SetCurrentConsoleFontEx] Peut-on modifier une police de caractères ?


Sujet :

C++/CLI

  1. #1
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut [C#/SetCurrentConsoleFontEx] Peut-on modifier une police de caractères ?
    Bonjour à tous

    Me voilà encore avec mes questions existencielles sur System.Console
    Je travaille avec un environnement XP Pro SP3

    Voici la seule dll disponible pour faire ce que je souhaite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    
    [DllImport("kernel32.dll", SetLastError = true)]
    privatestaticexternbool SetCurrentConsoleFontEx(IntPtr ConsoleOutput, Boolean MaximumWindow,  FontInfoEx ConsoleCurrentFont);
    
    Pourtant lorsque je veux l'utiliser dans une méthode quelconque, j'ai le message d'erreur suivant :
    Impossible de trouver le point d'entrée ...
    J'ai essayé sans conviction les implémentations suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ..., EntryPoint = "SetCurrentConsoleFont", ...
    et
    ..., EntryPoint = "SetCurrentConsoleFontEx", ...
    résultat : le même message d'erreur.

    Par acquis de conscience, j'ai ausculté ma dll kernel32.dll , et effectivement SetCurrentConsoleFontEx semble ne pas exister dans kernel32.dll
    Il me semble que cet API existait avant Vista.
    Pourriez-vous venir combler mon inculture ? Et me guider vers une solution alternative si nécessaire.

    Bien à vous, Néguib
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par MSDN
    Requires Windows Vista.
    toutes mes condoléances

  3. #3
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Citation Envoyé par tomlev Voir le message
    toutes mes condoléances
    Merci de ta sollicitude

    Citation Envoyé par neguib
    Pourriez-vous venir combler mon inculture ? Et me guider vers une solution alternative si nécessaire.
    Est-il possible d'influer sur la police de caractères de la Console par code ?
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par neguib Voir le message
    Est-il possible d'influer sur la police de caractères de la Console par code ?
    A part SetCurrentConsoleFontEx, je n'ai rien vu dans les fonctions console de l'API... rien trouvé non plus du côté de l'ami Google.
    Par contre, je ne suis pas convaincu de l'intérêt de la chose... si tu as besoin de faire quelque chose de "joli", la console n'est pas vraiment l'interface idéale

  5. #5
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    Hello ,

    t'as regardé du coté de SetConsoleTextAttribute ?

  6. #6
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Bonsoir, ô collègues

    Citation Envoyé par nico-pyright(c)
    t'as regardé du coté de SetConsoleTextAttribute ?
    A ma minuscule connaissance, SetConsoleTextAttribute est utilisable uniquement dans le cadre des couleurs Background et Foreground. Si tu connais une manière étendue de l'utiliser, je suis tout ouïe

    Citation Envoyé par tomlev
    Par contre, je ne suis pas convaincu de l'intérêt de la chose... si tu as besoin de faire quelque chose de "joli", la console n'est pas vraiment l'interface idéale
    Voici une manière fort habile pour balayer une question pourtant à l'origine plus pertinente qu'il n'y parait .
    Mon souci n'est bien évidemment pas de faire "joli" ( Quoique est-ce nécessaire de faire "moche" ) Il s'agit de faire "lisible". Ainsi ma question concernait tout aussi bien la taille de la police de caractères qu'accessoirement sa FontFamily.
    Pour ma part le problème est en sommeil, car la seule solution que j'ai été en mesure de trouver , est d'intervenir directement sur le registre, et encore un redémarrage du système s'avère obligatoire.
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  7. #7
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    je crois que t'as raison, pas de font pour SetConsoleTextAttribute

    Et un programme non console avec une jolie interface ?

  8. #8
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Citation Envoyé par nico-pyright(c) Voir le message
    je crois que t'as raison, pas de font pour SetConsoleTextAttribute

    Et un programme non console avec une jolie interface ?
    çà me Console pas
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

Discussions similaires

  1. Réponses: 7
    Dernier message: 07/05/2010, 09h52
  2. Réponses: 3
    Dernier message: 23/10/2009, 18h25
  3. Fournir une police de caractères avec son application ?
    Par SLicTa dans le forum C++Builder
    Réponses: 3
    Dernier message: 31/10/2008, 10h10
  4. peut-on modifier une fenêtre windows ?
    Par Titiou357 dans le forum Windows XP
    Réponses: 10
    Dernier message: 21/01/2008, 14h55
  5. Réponses: 3
    Dernier message: 17/07/2006, 17h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo