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# Discussion :

Minimiser la taille des boutons en fonction de la résolution de l'écran


Sujet :

C#

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut Minimiser la taille des boutons en fonction de la résolution de l'écran
    Bonjour,
    Je veux modifier la taille des boutons et des champs textes de mon application selon la résolution du système. En fait J'ai réalisé mon application en prenant en considération la taille maximale de la fenêtre et j'ai pris la résolution maximale de l'écran.
    Je veux maintenant que la taille des boutons et des champs textes se minimisent lorsque on diminue la résolution de l'écran.
    Est ce qu'il y a quelqu'un qui peut m'aider

    Merci

  2. #2
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Est ce qu'il y a quelqu'un qui peut m'aider ?
    Regarde du coté de AutoScaleFactor, AutoScaleDimensions, AutoScaleMode et PerformAutoScale.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut
    Bonjour,
    Merci beaucoup Graffito pour votre réponse. Vous m'avez bien aidé
    J'ai cherché dans le net mais j'ai trouvé des descriptions.
    J'ai trouvé ce lien du msdn mais je suis pas arrivé à l'implémenter.
    http://msdn.microsoft.com/fr-fr/libr...=vs.80%29.aspx
    Est ce qu'il y a un code ou bien des autres sites qui peuvent m'aider.
    Merci

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    J'ai trouvé ceci :

    Windows Forms now uses the following logic to automatically scale forms and their contents:
    1. At design time, each ContainerControl records the scaling mode and it current resolution in the AutoScaleMode and AutoScaleDimensions, respectively.
    2. At run time, the actual resolution is stored in the CurrentAutoScaleDimensions property. The AutoScaleFactor property dynamically calculates the ratio between the run-time and design-time scaling resolution.
    3. When the form loads, if the values of CurrentAutoScaleDimensions and AutoScaleDimensions are different, then the PerformAutoScale method is called to scale the control and its children. This method suspends layout and calls the Scale method to perform the actual scaling. Afterwards, the value of AutoScaleDimensions is updated to avoid progressive scaling.
    4. PerformAutoScale is also automatically invoked in the following situations:
      • In response to the OnFontChanged event if the scaling mode is Font.
      • When the layout of the container control resumes and a change is detected in the AutoScaleDimensions or AutoScaleMode properties.
      • As implied above, when a parent ContainerControl is being scaled. Each container control is responsible for scaling its children using its own scaling factors and not the one from its parent container.
    5. Child controls can modify their scaling behavior through several means:
      • The ScaleChildren property can be overridden to determine if their child controls should be scaled or not.
      • The GetScaledBounds method can be overridden to adjust the bounds that the control is scaled to, but not the scaling logic.
      • The ScaleControl method can be overridden to change the scaling logic for the current control.
    ~

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut
    Bonjour,
    J'ai essayé de suivre ce lien et ces étapes mais toujours j'ai le même problème.
    voilà le bout de code que j'ai ajouté à la méthode Initalize Componenet et au form load
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(this->CurrentAutoScaleDimensions!=this->AutoScaleDimensions)
    {
    	this->PerformAutoScale();
            this->AutoScaleDimensions;
    }
    J'ai ajouté aussi cette ligne mais ça n'a pas marché

  6. #6
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Il me semble que pour arriver à faire ce que tu veux on doit se servir de :
    The ScaleControl method can be overridden to change the scaling logic for the current control.
    Mais, n'ayant jamais utilisé ces méthodes/propriétés, je ne serai pas d'un grand secours ...

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut
    J'ai trouvé une solution qui n'est pas très efficace mais elle résout un peu le problème. La solution consiste à utiliser des tablelayoutPanel et GroupBox.

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 06/07/2010, 09h16
  2. Taille de fenêtre en fonction de la résolution de l'écran
    Par duf42 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 28/01/2008, 10h16
  3. Taille des bouton, cases à cocher etc ..
    Par Arola78 dans le forum Access
    Réponses: 4
    Dernier message: 05/10/2006, 16h25
  4. [ Eclipse2.1 ][ Plugin ] limiter la taille des boutons
    Par whilecoyote dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 03/11/2005, 16h08
  5. Réponses: 2
    Dernier message: 17/08/2005, 15h08

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