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 :

Gestion des colonnes d'une grille.


Sujet :

Composants VCL Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 182
    Points : 66
    Points
    66
    Par défaut Gestion des colonnes d'une grille.
    J'ai une CRDBGRID qui est lié à un datasource qui lui-même est lié à un query qui me ramène plus de 200 champs.
    Lorsque je lance mon application aucun pb jusque là. Je récupère dans ma grille mes 200 champs qui sont formaté suivant des propriétés que j'ai défini au travers du code ( ONDRAWDATACELL ).
    Mon problème est le suivant :
    Je n'ai en fait besoin visuellement que de certaines de ces colonnes.
    Jusque là, je chargeais l'ensemble de mes données puis je cachais certaines colonnes au moyen d'un boucle mais ce traitement est très long ( 3 secondes pour cacher 160-170 colonnes ).
    J'ai essayé de créer uniquement les colonnes qui m'intéresse au moyen de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    New_Col := Grid.Columns.Add;
    New_Col.FieldName := 'CLIENT';
    où New_col est de type TColumn et Grid est de type TCrDbGrid
    mais je me retrouve avec une grille ayant ma colonne créée mais pas mes données et le formatage souhaité ( je ne passe plus dans monONDRAWDATACELL ). Si je met ces deux lignes en commentaire tout redevient ok mais j'ai mes 200 colonnes.
    Est-ce que quelqu'un aurait une idée ?
    Est-ce possible ( et rapide ) de faire le raisonnement inverse à savoir de détruire certaine colonne ? J'ai essayé grid.Columns.Delete(i) où i est le n° de ma colonne mais rien ne se passe, j'ai toujours mes 200 colonnes.
    Help, please.

    NB : J'ai besoin de concerver les données cachées car elles sont utiles dans d'autres traitements.

  2. #2
    Expert éminent sénior

    Avatar de Nono40
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2002
    Messages
    8 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2002
    Messages : 8 640
    Points : 19 101
    Points
    19 101
    Par défaut
    Une solution est de travailler sur les champs de la table.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataSet.FieldByName('xxxxx').Visible := False;
    Delphi :
    La F.A.Q. , 877 réponses à vos questions !
    264 sources à consulter/télécharger !

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/01/2015, 22h58
  2. [Firebird 1.5] nom des colonnes d'une table
    Par c0rwyn dans le forum SQL
    Réponses: 4
    Dernier message: 03/09/2004, 14h44
  3. [VB6] Gestion des erreurs dans une dll
    Par zimba-tm dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 02/08/2004, 11h20
  4. Tri des colonnes d'une DBGRID
    Par Atrebate62 dans le forum Bases de données
    Réponses: 3
    Dernier message: 31/05/2004, 12h20
  5. Gestion des Utilisateurs depuis une application
    Par LLaurent dans le forum XMLRAD
    Réponses: 4
    Dernier message: 25/03/2003, 16h29

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