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

Langage Delphi Discussion :

Décalage dans l'affichage selon écran


Sujet :

Langage Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 111
    Points : 64
    Points
    64
    Par défaut Décalage dans l'affichage selon écran
    Bonjour à Tous.

    Sur ma fiche MaFiche*:
    PageControl1*: TPageControl*; Width 680. Height 468. Left 0. Top 24.

    Sur PageControl1*:
    MonOnglet1*: TTabSheet*;

    Sur MonOnglet1*:
    MonLabelA*: TLabel*; Left 256. Top 16.
    MonLabelP*: TLabel*; Left 328. Top 16.
    BOK*: TButton*;
    MaPaintBox*: TPaintBox*; Width 553. Height 401. Left 16. Top. 54.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var Valeur*: currency*;
     
    procedure TMaFiche.BOKClick(Sender*; Tobject)*;
    begin
      with MaPaintBox.Canvas do
      if Valeur <=0 then
        TextOut(256 - 16, 20, Format('%n', abs(Valeur))
      else
        TextOut(328 - 16, 20, Format('%n', abs(Valeur))*;
    end*;

    Avec 5 ordinateurs différents (W XP, 7, 8) Valeur s'affiche correctement sous MonLabelA ou MonLabelB.

    Avec un 6ème ordinateur, un Portable SONY (W 7) Valeur s'affiche avec un décalage sensible vers la gauche. A noter que ce 6ème appartient à un utilisateur et que je n'y ai donc pas accès.

    Merci à qui pourra m'éclairer sur la cause de ce décalage et sur la façon d'y remédier.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2009
    Messages : 322
    Points : 310
    Points
    310
    Par défaut
    Des images aideraient surement

    En passant qu'est-ce que ces * partout?

    Un espace qui s'ajoute sur la machine et qui fait un décalage: Parfois la conversion d'un nombre ajoute un espace là où il devrait avoir un signe "+"

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 111
    Points : 64
    Points
    64
    Par défaut Décalage dans l'affichage selon écran
    Merci sgmsg.

    Je n'avais même pas remarqué ces * qui apparaissent partout. Je ne sais pas comment ils sont arrivés mais ce n'est pas moi qui les ai tapés.

    Je n'ai pas la possibilité de faire une copie d'écran sur l'ordinateur défaillant, je ne l'ai pas en mains.

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 268
    Points : 41 671
    Points
    41 671
    Billets dans le blog
    64
    Par défaut
    Bonjour,

    c'est peut être un problème de police de caractères ?
    il serait assez facile de le vérifier en forçant la police du canvas pour quelle soit la même que le Label (nom et taille)

  5. #5
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 502
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 502
    Points : 3 133
    Points
    3 133
    Par défaut
    L'utilisateur n'aurait-il pas augmenté la taille générale de la police de Windows ? Genre 125% au lieu de 100% ?
    J'ai déjà eu des problèmes du même style à cause de ça.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 111
    Points : 64
    Points
    64
    Par défaut Décalage dans l'affichage
    Merci à tous les deux de vos contributions.

    SergioMaster : Je ne pense pas que ce soit le cas. En effet je ne vois pas pourquoi 1 ordinateur sur 6 ne répondrait pas comme les 5 autres.

    Papy214 : Non l'utilisateur n'a pas modifié la taille de la police générale de Windows.

  7. #7
    Membre habitué
    Inscrit en
    Juillet 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Juillet 2007
    Messages : 113
    Points : 170
    Points
    170
    Par défaut
    Lorsque le PPP de l'écran est trop important (genre 1920*1080 pour un 15") certains portables sont livrés par défaut avec un zoom de 125%.

    Quelques infos par ici : http://www.developpez.net/forums/d14...ge-composants/

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 111
    Points : 64
    Points
    64
    Par défaut Re Décalage selon écran
    Merci tenpigs et très intéressant, il doit y avoir de cela dans mon problème.

    Mais finalement je pense avoir résolu, ou plutôt contourné, le problème en supprimant les Labels et en écrivant leurs Captions sur la PaintBox.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    var Valeur : currency;
     
    procedure TMaFiche.BOKClick(Sender : TObject);
    begin
      with MaPaintBox.Canvas do
      begin
        TextOut(256 - 16, 0, 'Caption de MonLabelA');
        TextOut(328 - 16, 0, 'Caption de MonLabelB);
        if Valeur <= 0 then
          TextOut(256 - 16, 20, Format('%n', abs(Valeur))
        else
          TextOut(328 - 16, 20, Format('%n', abs(Valeur));
      end;
    end;
    Tout étant écrit en TextOut il ne doit plus y avoir de décalage possible.

    Merci à tous pour vos contributions.

  9. #9
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    893
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 893
    Points : 330
    Points
    330
    Par défaut
    Citation Envoyé par tenpigs Voir le message
    Lorsque le PPP de l'écran est trop important (genre 1920*1080 pour un 15") certains portables sont livrés par défaut avec un zoom de 125%.

    Quelques infos par ici : http://www.developpez.net/forums/d14...ge-composants/
    moi aussi j'ai souvent ce problème

    on est obligé d'expliquer à l'utilisateur manuellement

    parfois le problème vient de là, parfois d'ailleurs ...

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

Discussions similaires

  1. Affichage dans un TextFields selon un treePanel
    Par mateuil dans le forum AWT/Swing
    Réponses: 18
    Dernier message: 23/06/2007, 14h27
  2. ré-affichage d'un msgbox dans x jours (selon choix utilisateur)
    Par léclaireur dans le forum Général VBA
    Réponses: 6
    Dernier message: 03/05/2007, 09h48
  3. [FORMULAIRE] affichage selon le choix dans une liste déroulante.
    Par gailup dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 25/06/2006, 15h58
  4. Affichage selon une condition dans un DBGRID !
    Par obon dans le forum Bases de données
    Réponses: 2
    Dernier message: 14/04/2006, 10h26

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