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

Composants VCL Delphi Discussion :

[ContrôleBD] DBCtrlGrid qui se redimensionne tout seul !


Sujet :

Composants VCL Delphi

  1. #1
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut [ContrôleBD] DBCtrlGrid qui se redimensionne tout seul !
    Voilà, j'ai un DBCtrlGrid sur ma fiche relié à sa DataSource, et chaque fois que ma fiche est crée (quand je lance mon appli après compilation, ou même quand je rouvre mon projet Delphi, je me retrouve avec des Panels (et un DBCtrlGrid) 2 fois plus hauts que ce que j'avais inscrit dans les propriétés au moment du design.

    Pour info, je laisse la Propriété PanelHeight à 72
    et je met Rowcount à 6.
    ... et je me retrouve en gros avec 6 panels d'une hauteur de 144 (au lieu de 72), du coup mon DBCtrlGrid "déborde" de ma fiche.

    L'erreur est reproduisible.

    La seule solution que j'ai trouvé, c'est dans l'événement OnFormCreate de ma fiche parente de faire un
    DBCtrlGrid1.PanelHeight:=72.

    Ca marche, mais ça reste casse pied quand j'ouvre mon projet le matin.
    N'avez vous pas une idée de l'origine de ce problème dans le code de la VCL afin d 'y remédier définitivement, ou bien avez vous déjà trouvé une solution ? J'ai cherché dans le code en step by step mais je n'ai pas trouvé (à part une procédure "autoresize" dans le create qui aurait peut-être due être dans une methode "Loaded" inexistante ???)
    PS : Ce qui est étonnant, c'est que j'ai cherché sur les FAQ, les buglists, QualityCentral, et lpleins de forums et je n'ai rien trouvé à ce sujet.

    Merci par avance de votre aide.
    Oubli : c'est dans Delphi 7...
    Bidouilleuse Delphi

  2. #2
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Ca fait plusieurs jours que je sêche en vain sur ce problême, vraiment personne n'a d'idée à ce sujet ?
    Bidouilleuse Delphi

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Une petite idée ,
    Verifier les propriétés Constraints
    "La Connaissance s'accroît quand on la partage !"

  4. #4
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Chouette! j'essaye et je te dis
    Bidouilleuse Delphi

  5. #5
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut

    Ca ne marche pas !!!!!! Snif...
    Bidouilleuse Delphi

  6. #6
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Salut

    est-ce que tu saisis des choses dedans qui déborderaient de la taille standard et que ta Grid soit à AutoSize ou un truc comme ça?
    Pedro
    Aucune réponse aux sollicitations techniques par MP

    Faut pas attendre d'en avoir besoin pour s'en servir... (Lucien Stéphane)

    Les pages Source C'est bon. Mangez-en!
    Le défi Delphi
    Règles du forum - FAQ Delphi - Pensez au chtit
    Aéroclub Bastia Saint-Exupéry

  7. #7
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Merci Pedro204, le seul souci c'est que le contrôle TDBCtrlGrid n'a pas de propriété autosize !
    C'est vraiment à n'y rien comprendre !
    Bidouilleuse Delphi

  8. #8
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    En résumé :

    Si je met 'Rowcount' à quelque chose de supérieur à 3 (disons N), je me retrouve à l'ouverture de la fiche (à la conception et à l'exécution, donc c'est bien au niveau du create du contrôle) avec un DBBCtrlGrid et ses panels plus grands (Le nouveau PanelHeight aura alors pour valeur l'ancien PanelHeight multiplié par N/3).

    J'ai quand même trouvé un moyen de contourner le problême : ne pas laisser PanelHeight égal à 72 (valeur par défaut en conception donc non enregistrée sur le .dfm) mais par contre en mettant 71 ou 73, tout rentre dans l'ordre.

    Voilà, voilà...

    Important : Sous Delphi 6, je n'ai pas rencontré ce problême.
    Bidouilleuse Delphi

  9. #9
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut Suite et fin
    Avec un comparateur de fichier j'ai comparé les unité de Delphi 6 et de Delphi 7 'dbcgrids.pas' entre les deux versions.
    Dans les 1181 lignes que compte l'unité seules 4 lignes ont été subtilement changées... et génèrent le comportement non voulu. Si peu de choses...

    Ainsi dans Delphi 6 on trouve :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    property ColCount: Integer read FColCount write SetColCount;
    ...
    property PanelHeight: Integer read FPanelHeight write SetPanelHeight;
    property PanelWidth: Integer read FPanelWidth write SetPanelWidth;
    ...
    property RowCount: Integer read FRowCount write SetRowCount;
    Et dans delphi 7 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    property ColCount: Integer read FColCount write SetColCount default 1;
    ...
    property PanelHeight: Integer read FPanelHeight write SetPanelHeight default 72;
    property PanelWidth: Integer read FPanelWidth write SetPanelWidth default 200;
    ...
    property RowCount: Integer read FRowCount write SetRowCount default 3;
    C'est pas malin...


    J'ai réécris le contrôle à la Delphi 6 et maintenant ça marche !
    Bidouilleuse Delphi

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

Discussions similaires

  1. Des requêtes qui s'effacent toutes seules
    Par Celia1303 dans le forum Access
    Réponses: 2
    Dernier message: 16/12/2005, 15h19
  2. Des "=" qui se mettent tout seuls dans une TLisBox
    Par [Silk] dans le forum Langage
    Réponses: 2
    Dernier message: 11/11/2005, 12h35
  3. Formulaire qui se valide tout seul :8O:
    Par Boumeur dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/04/2005, 12h21
  4. Avoir un champ qui se decremente tout seul
    Par romeo9423 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 15/02/2005, 04h32
  5. TCanvas et handle qui se désalloue tout seul
    Par efourmon dans le forum Langage
    Réponses: 3
    Dernier message: 14/01/2004, 11h07

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