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

VB.NET Discussion :

Redimensionnement Via la propriété Anchor [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2011
    Messages : 70
    Par défaut Redimensionnement Via la propriété Anchor
    Bonjour,

    Actuellement travaillant sur un module devant être à la fois efficace est ergonomique, je m'efforce de jouer sur la taille de mes contrôles. (En particuliers mes TreeView)

    Pour ce faire, j'ai découvert la propriété Anchor, et après quelques tests et recherches, je pense avoir saisie son fonctionnement et la plupart de ses possibilités

    Cependant, cette propriété me fait me heurter à un léger problèmes, la superpositions de contrôles.

    Comme cela se voit sur l'image jointe n°1, la taille originale de l'ensemble du formulaire est plutôt correcte, mais lorsque celui-ci est mis en plein écran, les TreeView latéraux viennent de glisser sous la GroupBox centrale (Image n°2)

    Il est en effet possible de supprimer l'ancre des TreeView orientée sur le centre du formulaire, mais pour un écran de grande taille, cela laissera un énorme vide entre ceux-ci et la GroupBox

    Voilà, peut-être quelqu'un connait-il un moyen de :
    - Bloquer l'agrandissement quand celui-ci se fait au détriment d'autres contrôles
    - Une autre propriété aboutissant à un résultat similaire (le remplisage de la fenêtre même sur des écrans de grande taille
    - Une autre solution quelconque ?

    Merci d'avance à ceux qui ont une solution à me proposer
    Images attachées Images attachées   

  2. #2
    Membre éclairé Avatar de Chapeau_Bas
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Décembre 2010
    Messages : 44
    Par défaut
    Bonjour,

    Je pense qu'il faut que du désactives l'anchor vers la droite pour la liste gauche et l'anchor vers la droite pour les controls centraux. Laisse l'anchor vers la droite pour ta liste droite. (Ainsi la "place" libéré par l'agrandissement sera combler par ta liste droite.)

    Après si tu souhaites un design plus intéressant sans te soucier des ancres, positionne dynamiquement tes controls. De mémoire, je ne pense pas cela possible juste par les anchors dans ce cas. Après, je me trompe peut être. ^^'

    En espérant t'avoir aider.
    Bonne journée.

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2011
    Messages : 70
    Par défaut
    Merci de ta réponse mais :

    Les Anchor latérales de ma GroupBox Centrale ne sont pas activées, et si je désactive l'Anchor droite du TreeView de Gauche, et le contraire pour celui de droite, je me retrouve avec un vide énorme entre les TreeView et la GroupBox.
    Sur un écran d'une taille réduite cela fait un bon effet, mais dès que la taille de l'écran devient un peu plus importante, cela laisse un vide assez impréssionnant, et donc très peu esthétique

    J'avais tenté la gestion dynamique à l'origine, avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Me.MonTV.Width = Me.Widht/2 -10 
    'le 10 est une valeur arbitraire pour éviter de racler les bords :p
    Cependant, cela faisait rentrer le TreeView de droite dans le "vide", il sortait du formulaire.

    Enfin, tu me donne tout de même une idée, l'utilisation de la méthode dynamique couplée avec une Anchor reglerait certainement ce problème, je vois cela de suite, et je repasse :p

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Par défaut
    Pour ma part je t'orienterais plutôt vers des "TableLayoutPanel" pour gérer tout ça correctement (en pourcentage pour ce qui varie, fixe pour le reste)

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2011
    Messages : 70
    Par défaut
    Merci pour le TableLayoutPanel

    Effectivement, le couplage de la propriété Anchor avec la méthode dynamique de redimensionnement de marche pas vraiment efficace, la TreeView de droite part encore une fois à l'extérieur du formulaire.

    Je regarde en ce moment pour le TableLayoutPanel, mais il me lève une exception pour certaines lignes de code tel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.tvClassification.TopNode.Text = Me.tvClassification.TopNode.Text & " (" & CalculNbTotalProdClassification() & ")"
    Ainsi que :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.tvClassification.TopNode.Expand()

    Edit:
    En fait c'est bon, mis à part ces exceptions, ça à l'air de marcher plutôt bien, merci beaucoup pour ce contrôle, me reste plus qu'à trouver ce qui lui pose problème

  6. #6
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Par défaut
    J'ai un peu de mal à comprendre pourquoi mettre tes contrôles dans des TableLayoutPanel te lève des exception sur ces morceaux de code sans rapport.
    Quelles sont les exceptions levées ?

  7. #7
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2011
    Messages : 70
    Par défaut
    Je crois que cela venait d'un test que j'ai fais sur les propriétés du TableLayoutPanel, je les aient remis à leur place, et ils me demandent plus d'instantiation.

    Bref, plus de levée d'exception, redimensionnement sans superposition de contrôles, chacun reste dans le formulaire, et la taille de l'écran importe peu vu que cela se base sur des pourcentages.

    Pour ceux qui trouveront se sujet en recherchant la même réponse que moi :
    Il faut également définir les Anchor Top, Left, Bottom et Right du TableLayoutPanel pour permettre le redimensionnement correct de celui-ci.

    Encore merci de m'avoir fais découvrir ce contrôle qui est exactement ce dont j'avais besoin

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

Discussions similaires

  1. Scroll bar qui disparait avec utilisation propriété Anchor
    Par Gualino dans le forum Windows Forms
    Réponses: 2
    Dernier message: 14/10/2011, 14h48
  2. JFrame et redimensionnement via ActionListener
    Par babyben2 dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 21/12/2010, 21h39
  3. ListView et la propriété Anchor
    Par damingo dans le forum VB.NET
    Réponses: 2
    Dernier message: 18/06/2010, 14h27
  4. Exposer le style d'un contrôle via une propriété?
    Par lutecefalco dans le forum Silverlight
    Réponses: 5
    Dernier message: 04/06/2010, 10h42
  5. Réponses: 6
    Dernier message: 15/09/2008, 22h00

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