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++Builder Discussion :

Problème d'affichage avec des caractères de grande taille


Sujet :

C++Builder

  1. #1
    Inactif
    Inscrit en
    Octobre 2004
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 18
    Points : 7
    Points
    7
    Par défaut Problème d'affichage avec des caractères de grande taille
    J'ai un problème d'affichage pour mon application MDI lorsque l'utilisateur a choisi dans les réglages de Windows une grande taille de police (Panneau de Config. -> Affichage -> Settings -> Avancé -> Grande police 125 DPI la traduction est approximative, car j'ai windows en angliche).
    Résultat: les fenêtres ne sont pas au bon endroit, n'ont pas la bonne taille, certains composants n'apparaissent pas car ils débordent... Bref l'application est inutilisable.
    Je précise qu'il ne s'agit pas d'un problème lié à la résolution de l'écran, mais bien à la taille de la police.
    Comment puis-je détecter la taille de la police?
    Comment puis-je faire en sorte que mon application soit compatible avec les deux tailles proposées (125 et 96 DPI)?
    Dois-je abandonner la programmation et envisager une autre activité telle que la préparation de clafoutis?

  2. #2
    Rédacteur
    Avatar de Greybird
    Inscrit en
    Juin 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 673
    Points : 1 271
    Points
    1 271
    Par défaut
    Bonjour,

    Je crois que cette option modifie les réglages de l'écran.
    Dans ce cas, les données doivent être accessibles via l'objet Screen.

    Tu es tombé sur un problème que je qualifierai de problématique

    Il faut tout gérer soi même dans ce cas. Ce qui est loin d'être évident...

    Cordialement,

    Arnaud

  3. #3
    Inactif
    Inscrit en
    Octobre 2004
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Salut Arnaud,

    Via l'objet Screen, j'ai effectivement accès aux propriétés Height et Width grâce auxquelles je peux rendre la taille des composants indépendante de la résolution de l'écran. Mais je n'ai pas accès à la taille de la police...
    J'ai testé quelques applications grand public en résolution 1400x1050 et avec une police 120 DPI (au lieu du traditionnel 1024x768 et 96 DPI). La plupart consèrve un affichage valable.
    Il doit donc bien y avoir une solution...

  4. #4
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    J'ai eu ce problème, je l'ai "résolu", c'est un bien grand mot, en effectuant des calculs de taille et de position des contrôles, dans une fontion gérant le message WM_WINDOWPOSCHANGED.
    C'est du bidouillage et si quelqu'un possède une solution propre, je serai ravi de la connaître.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  5. #5
    Inactif
    Inscrit en
    Octobre 2004
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Salut TrapD!
    Tu peux donner quelques détails? Par exemple, le temps nécessaire pour implémenter ta technique, et le résultat atteint?
    Merci!

  6. #6
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    En très gros, j'ai créer la boîte de dialogue en utilisant la résolution de 96 dpi.
    Et je calcule la taille et la position de certains éléments en utilisant la proportionalité : (taille_element * dpicompil)

    #define dpicompil ((float)(Screen->PixelsPerInch)/96.0)

    C'est approximatif, ça donne d'assez bons résultats mais ce n'est pas parfait.

    Il faut y aller au coup par coup pour chaque élément, car le résultat doit être corrigé +/- 1 pixel.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  7. #7
    Inactif
    Inscrit en
    Octobre 2004
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 18
    Points : 7
    Points
    7
    Par défaut
    Merci TrapD, je vais essayer.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Framework] Problème d'affichage avec des Map/List
    Par Renkaze dans le forum Spring
    Réponses: 1
    Dernier message: 14/06/2013, 12h44
  2. Problèmes d'affichage, encodage des caractères
    Par magicdim dans le forum Firefox
    Réponses: 8
    Dernier message: 22/11/2012, 13h33
  3. Affichage avec des caractères spéciaux
    Par xzéna dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 28/03/2012, 21h34
  4. Problème d'affichage avec des Div imbriquées
    Par Arkoze dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 21/02/2011, 17h07
  5. problème avec des caractères
    Par mademoizel dans le forum Langage
    Réponses: 1
    Dernier message: 06/12/2007, 22h13

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