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 :

Defilement dynamique de groupbox


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 25
    Par défaut Defilement dynamique de groupbox
    Bonjour à tous,
    Je réalise une interface graphique en C# à l'aide de Visual studio 2008.
    Cette interface comporte 8 lignes de commandes (chaque ligne de commande comporte divers outils tels que des textBox, checkbox, comboBox...bref des cases qui vont permettre à l'utilisateur d'entrer ses données ) et chaque ligne de commande se trouve dans un groupbox (ainsi pour résumer l'interface contient 8 groupBox).
    Mon problème est le suivant: je souhaite faire défiler les groupbox de manière dynamique c'est à dire que sur mon interface seule 4 groupbox seront visibles et on aura deux boutons ("monter" et "descendre") qui permettront de faire défiler les lignes de commandes (un peu comme sous Microsoft Excel ).
    Par exemple, si les groupbox 2,3,4,5 sont affichés à l'écran et que j'appuie sur le bouton "monter", l'écran affichera les groupBox 1,2,3,4 et de même si j'appuie sur "descendre" l'écran affiche les groupBox 2,3,4,5 et si j'appuie encore une fois sur descendre l'écran affichera les groupBox 3,4,5,6 et ainsi de suite.
    Je débute dans la programmation C# et j'aimerais tout d'abord savoir si cette fonction est réalisable. Si c'est le cas j'aurais besoin qu'on m'oriente un peu sur la manière de la réaliser car voilà 2 jours que j'effectue des recherches sur internet mais sans grands résultats. J'ai pensé à incorporer le tout dans un panel puis essayer de jongler avec un fichier temporaire mais bon j'ai du mal à visualiser la chose. Je commence à désespérer.
    Je vous remercie d'avance pour toute l'aide que vous pourrez m'apporter afin d'avancer dans mon proget.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 612
    Par défaut
    je te conseil d'utiliser un conteneur parent unique pour tout tes GroupBox

    comme un GroupBox qui contiendrais tout les autres GroupBox mais de maniere transparente


    ainsi un Panel avec l'option "Dock = fill" pour utiliser tout l'espace libre

    puis tout tes GroupBox sont a placer a l'interieur du Panel avec chaqu'un "Dock = Top"


    enfin dernier point pour le Panel "AutoScroll = true" sois en francais "afficher l'ascenseur automatiquement = oui"

  3. #3
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 25
    Par défaut
    Salut,
    Merci pour la réponse, j'ai essayé la solution que tu m'as proposé mais un autre problème est apparu.
    En effet, j'avais défini une comboBox me permettant de sélectionner le nombre de lignes de commande et chaque ligne de commande est numérotée. Ainsi quand je sélectionne un nombre de ligne de commande dans la comboBox ('n' par exemple) nous avions alors 'n' lignes de commande qui s'affichaient dans l'ordre croissant comme que je l'avais défini dans mon programme mais à présent que ces lignes sont incorporées au panel, elle s'affiche dans n'importe quel ordre sauf dans l'ordre que je souhaiterais.
    J'ai vérifié mon programme est apparemment il n'y a pas d'erreur.
    Il y a t-il un moyen d'ordonner les éléments de mon panel?

  4. #4
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 25
    Par défaut
    J'ai trouvé, il suffisait de ne pas mettre Dock=Top pour tous les groupBox.
    Ainsi pour la 1ere groupBox, on a Dock=Top, pour la dernière Dock=Bottom et on laisse Dock=None pour les groupBox entre les deux, apparemment ça marche!!!
    Merci beaucoup pour ton aide,

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 612
    Par défaut
    je ne suis pas trop en accord avec ta solution....

    en effet ici le Dock te permet d'avoir une presentation correcte(pas d'espace blanc entre les GroupBox)

    il est donc important d'avoir tout tes GroupBox avec un Dock = Top

    au pir le dernier peut etre Dock = Fill (totalitè)


    le problème que tu rencontrer et simple, il ya une position "en dessus" et "en dessous" pour chaque controle, suivant ceci les Dock=Top seront positionnè dans un certain ordre

    fait des test manuellement pour savoir dans quel ordre effectuè les "mettre au dessus"


    pour fair "en dessus" "en dessous" par le code utilise:
    MonControl.BringToFront()
    MonControl.SendToBack()

  6. #6
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 25
    Par défaut
    ouais ta raison, je viens de me rendre compte de quelques défauts dans ma solution précédente notamment dans l'occupation de la place dans le panel.
    Merci beaucoup pour les instructions "BringToFront()" et "SendToBack()" c'est exactement ce qu'il me fallait (). Là l'affichage est nickel

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

Discussions similaires

  1. [Débutant] interface contenant un tableau qui defile dynamiquement
    Par wahidred dans le forum VB.NET
    Réponses: 14
    Dernier message: 12/04/2012, 17h12
  2. Réponses: 4
    Dernier message: 11/09/2008, 19h55
  3. Defilement d'images dynamiques
    Par pjipe dans le forum ActionScript 1 & ActionScript 2
    Réponses: 3
    Dernier message: 22/06/2007, 13h49
  4. Ajouter dynamiquement un element graphique a un groupbox
    Par Revan777 dans le forum C++Builder
    Réponses: 2
    Dernier message: 07/11/2006, 14h09
  5. Groupbox pas assez dynamique
    Par gdpasmini dans le forum Windows
    Réponses: 6
    Dernier message: 31/03/2006, 22h33

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