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

Langage Delphi Discussion :

Modification des colonnes dans un dbgrid


Sujet :

Langage Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Consultant informatique
    Inscrit en
    Octobre 2006
    Messages
    240
    Détails du profil
    Informations personnelles :
    Âge : 69

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 240
    Par défaut Modification des colonnes dans un dbgrid
    Slt à tous,
    Dans une application, j'affiche un dbgrid affichant les champs d'une table qui selon le menu sélectionné par l'utilisateur doit afficher certaines colonnes et pas d'autres et dans un ordre différent que celui de la table. Est-il possible en delphi 4 uniquement par le code ou dois-je installer plusieurs dbgrid qui seraient activés selon le menu choisi ?

    Merci

  2. #2
    Membre Expert Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 553
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 553
    Par défaut
    Je ne sais pas si c'est OK dans D4 mais regardes la notion de TColumn associé à la DBGRID.

  3. #3
    Membre éclairé
    Consultant informatique
    Inscrit en
    Octobre 2006
    Messages
    240
    Détails du profil
    Informations personnelles :
    Âge : 69

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 240
    Par défaut
    Merci de ton info.
    J'ai vu effectivement pas mal de propriétés à ce sujet mais je ne trouve pas (à moins que je ne sois pas assez perspicace) la propriété qui détermine la position de la colonne dans le dbgrid. A mon regret, Je n'ai pas de composant supplémentaire permettant de gérer d'autres propriétés des dbgrid que ceux de delphi 4. En existe-t-il encore disponible? Mon souhait est que par exemple le champ 6 de ma table selon le tri choisi par le menu de mon application s'affiche tantôt en 6° position tantôt en première position.
    Merci si tu peux m'en dire plus

  4. #4
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 491
    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 491
    Par défaut
    salut

    il te suffit de derive TDbGrid

    exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    type
     
      TDBGrid = Class(DBGrids.TDBGrid)
        procedure MoveColumn(FromIndex, ToIndex: Longint);
      end;
     
    // on declar la form normalement
      TForm1 = class(TForm)
        DBGrid1: TDBGrid;
        ....
    end;
     ...
     
    implementation
     
    {$R *.dfm}
    // on rappelele la methode qui se trouve dans TCustomGrid
     procedure TDBGrid.MoveColumn(FromIndex, ToIndex: Longint);
     begin
       inherited;
     end;
     
    // ici on l'utilise selon c'est besoin 
    procedure TForm1.BitBtn1Click(Sender: TObject);
    begin
      DBGrid1.MoveColumn(1, 3);
    end;
    @+ Phil

  5. #5
    Membre éclairé
    Consultant informatique
    Inscrit en
    Octobre 2006
    Messages
    240
    Détails du profil
    Informations personnelles :
    Âge : 69

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 240
    Par défaut
    Me revoilà à nouveau.
    La compilation me donne une erreur :
    Identificateur non déclaré : MoveColumn
    et le point d'insertion vient juste après!
    J'ai pourtant bien déclaré le tout comme proposé.

    merci

  6. #6
    rsc
    rsc est déconnecté
    Membre émérite
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Par défaut
    Pour ma part, j'essaierais, en supposant que les noms de champs à afficher sont stockés dans un StringList ListeChamps :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DbGrid.Columns.Clear;
    for i := 0 to ListeChamps.Count - 1 do
      with DbGrid.Columns.Add do
        FieldName := ListeChamps[i];
    Le code doit sans doute être affiné, mais c'est en gros comme ça qu'on procède quand on définit les colonnes à la conception.

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

Discussions similaires

  1. Tri des valeurs dans un DBGrid
    Par soviet dans le forum C++Builder
    Réponses: 3
    Dernier message: 11/06/2015, 14h18
  2. [Lazarus] Modification position des colonnes dans un DbGrid
    Par ovni76 dans le forum Lazarus
    Réponses: 10
    Dernier message: 15/06/2009, 13h57
  3. multiplication des colonne dans un DBGrid
    Par info_sara dans le forum Bases de données
    Réponses: 3
    Dernier message: 03/02/2009, 10h55
  4. Affichage du titre des colonnes dans un DBGrid
    Par Debure dans le forum C++Builder
    Réponses: 6
    Dernier message: 05/10/2005, 23h41
  5. [dbGrid]Image dans le titre des colonnes d'un dbGrid
    Par dleu dans le forum Bases de données
    Réponses: 1
    Dernier message: 31/08/2004, 18h01

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