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

Delphi Discussion :

Bug du refresh sur un TPanel


Sujet :

Delphi

  1. #1
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 7
    Points
    7
    Par défaut Bug du refresh sur un TPanel
    Bonjour

    Actuellement je suis en stage et j'ai un projet à faire en Delphi.
    Je me trouve face à un bug que je ne parviens pas à corriger.

    J'ai une ScrollBox dans une TFrame.
    J'ai 5 TPanel dans la ScollBox (les uns au dessous des autres).
    J'ai un GroupBox dans le Tpanel.

    Quand je resize la frame par un splitter ou en modifiant la taille j'ai mon dernier TPanel du bas qui passe de 55000 pixel à 33000!

    Donc j'ai un gros blanc en bas de la frame et une partie des informations ne sont plus visibles.
    Sauriez vous comment corriger ca?

    Merci d'avance.

  2. #2
    Membre averti Avatar de Bejaia-In
    Inscrit en
    Avril 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 365
    Points : 392
    Points
    392
    Par défaut
    Quelle valeur tu as donnée a la propriété "Align" de chaque Panel ?
    Ton problème viens sûrement de la.

  3. #3
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 7
    Points
    7
    Par défaut
    chaque TPanel a comme valeur align : onTop

    j'ai placé les TPanel dans l'ordre que je voulais en les mettant d'abord tous a onBottom puis en les remettant à onTop dans le bon ordre

    Chaque TPanel contenant une GroupBox avec comme valeur align: AllClient

  4. #4
    Membre averti Avatar de Bejaia-In
    Inscrit en
    Avril 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 365
    Points : 392
    Points
    392
    Par défaut
    chaque TPanel a comme valeur align : onTop
    Dans ce cas c'est normal que les panels s'alignent tous vers le haut et gardent leurs dimensions.
    A mon avis, tu doit mettre des Splitter entre les Panel dans le sens horizontal pour que tu puisse les redimentionner.
    En plus, a quoi sert de mettre un GroupBox dans un Panel, double fonction.

  5. #5
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 7
    Points
    7
    Par défaut
    le problème c'est justement qu'un des TPanel ne garde pas sa dimension.
    C'est le dernier TPanel en bas qui devrait faire 55000 pixel or il se redimensionne tous seul à 33000.

    Ce bug n'apparait que à partir d'une certaine taille du TPanel.

    Le nombre d'information est trop grand pour que ca serve à quelque chose de mettre un splitter.

    Les GroupBox permettent une mise en page des informations. Il y a une groupBox par TPanel et la groupBox est aligné au client entier.

  6. #6
    Membre averti Avatar de Bejaia-In
    Inscrit en
    Avril 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 365
    Points : 392
    Points
    392
    Par défaut
    Et si tu mettait la propiété "Align" du dernier TPanel a "alClient", ça donne quoi ?

  7. #7
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 7
    Points
    7
    Par défaut
    quand je met align du dernier TPanel à allclient il ne modifi pas la taille du TPanel par la suite, c'est à dire que lorsque je change la taille tu TPanel il ne prend pas en compte.

    Donc au lieu de me retrouver avec un TPanel de 55000 je dois avoir un TPanel de 700 tout le temps...

  8. #8
    Membre averti Avatar de Bejaia-In
    Inscrit en
    Avril 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 365
    Points : 392
    Points
    392
    Par défaut
    Pourais-tu envoyer un capture écran de ton application ?

  9. #9
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 7
    Points
    7
    Par défaut
    et voici : ("Documents" correspond au dernier TPanel) c'est lui qui est coupé quand on resize


  10. #10
    Membre averti Avatar de Bejaia-In
    Inscrit en
    Avril 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 365
    Points : 392
    Points
    392
    Par défaut
    Je t'envois un petit projet exemple pour tu vois comment on peut utiliser des Splitters entre des Panels pour les redimentionner à l'exécution.

    Pièce jointe 2040

  11. #11
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 7
    Points
    7
    Par défaut
    merci pour l'exemple mais malheureusement ca ne correspond pas à ce qu'attendent les utilisateurs pour mon programme.

    Il faut que la liste complète soit affiché et qu'on ait juste à scroller pour voir.

  12. #12
    Membre averti Avatar de Bejaia-In
    Inscrit en
    Avril 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 365
    Points : 392
    Points
    392
    Par défaut
    Désolé, mais je n'arrive a cerner ton problème, est-il dû a une erreur de manipulation dans les propriétés des Panels ou est-ce vraiment un bug du composant (dont ça m'étonerai beaucoup) ?

  13. #13
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 434
    Points : 5 846
    Points
    5 846
    Par défaut
    salut

    Tu as combien de panel pour ton projet
    j'utilise souvent des panel et j'evite de tous mettre en altop

    il te suffit d'un panel conteneur principal
    dans lequel tu y integre tes deux autre panel
    le priemier en altop et le second en alClient

    il te suffit ensuite de jouer avec le panel principal

    @+ Phil

  14. #14
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 7
    Points
    7
    Par défaut
    Désolé, mais je n'arrive a cerner ton problème, est-il dû a une erreur de manipulation dans les propriétés des Panels ou est-ce vraiment un bug du composant (dont ça m'étonerai beaucoup) ?
    je ne sais pas justement.

    Une chose très bizarre c'est que je n'ai pas pu mettre le dernier TPanel à une hauteur de 55000 après qu'il se mette à 33000.
    De plus quand j'essaye de forcer il me fait un autre bug, les autres TPanel se mettent en dessous du TPanel de 33000.

    anapurna
    J'ai 7 TPanel. Certain ne s'affichant pas à chaque fois (je les met à visible := false).
    Je vais essayer ta méthode d'un TPanel conteneur.

  15. #15
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Points : 7
    Points
    7
    Par défaut
    apparement le Height d'un TPanel est un smallint ou à un moment elle devient un smallInt. Or un smallInt est limité à 32000. Donc mon problème viendrait de cette limite pour ce type de variable.

    Pour résoudre mon problème j'ai supprimé le TPanel en question.


    Merci à Bejaia-In et à anapurna pour votre aide.

Discussions similaires

  1. Bug MySQL constaté sur 5.0.15, 5.0.16 et 5.0.18
    Par stephdiplo150 dans le forum Requêtes
    Réponses: 1
    Dernier message: 19/01/2006, 20h21
  2. Bloquer Refresh sur un panel
    Par TicTacToe dans le forum Composants VCL
    Réponses: 4
    Dernier message: 04/01/2006, 13h35
  3. Bug d'affichage sur un élément flottant
    Par Sayrus dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 24/12/2005, 02h28
  4. Utilisation de "refresh" sur un champ calculé
    Par Nicko29 dans le forum Access
    Réponses: 27
    Dernier message: 22/12/2005, 22h58
  5. problème de refresh sur une DBGrid
    Par lidouka dans le forum Bases de données
    Réponses: 4
    Dernier message: 20/12/2005, 17h12

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