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

Bases de données Delphi Discussion :

DBGrid : enregister la position des colonnes


Sujet :

Bases de données Delphi

  1. #1
    Membre expérimenté
    Avatar de Harry
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2002
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 224
    Points : 1 331
    Points
    1 331
    Par défaut DBGrid : enregister la position des colonnes
    Bonjour,

    Je voudrai savoir si il y a une technique pour enregister facilement la position des colonnes sur une DBGrid ou si je dois les lister un par un par rapport au FieldName, enregister le tout dans un champ memo avec une ligne par FieldName....

    Merci de vos idées, ca me parait bizzare que rien ne soit prévu dans le DBGrid pour faire ça automatiquement.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 43
    Points : 52
    Points
    52
    Par défaut
    Tu dois les lister une par une en passant par la collection TDBGrid.Columns

  3. #3
    Membre expérimenté
    Avatar de Harry
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2002
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 224
    Points : 1 331
    Points
    1 331
    Par défaut
    Oui, c'est ce que je me résoud à faire : je liste les FieldNames dans un champ Memo de ma BDD dans l'ordre des Columns et pour les replacer je fait l'opération inverse

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 27
    Points : 28
    Points
    28
    Par défaut
    Bonjour,

    Tu pourrais faire un descendant de ta dbGrid qui, en se créant, recherche un fichier d'initialisation, et en se détruisant : écrit ce fichier d'initialisation. Ce serait transparent et relativement élégant ...

  5. #5
    Membre expérimenté
    Avatar de Harry
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2002
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 224
    Points : 1 331
    Points
    1 331
    Par défaut
    Nouveau problème : ma méthode marche bien sur un de mes db grid, mais sur un autre, indépendant, avec un autre dataset etc.. Le contenu (données) des colonnes se replace bien, la largeur des colonnes se replace bien mais pas le titre des colonnes.
    Pourquoi le meme code marche pour un DBGrid et pas sur l'autre? Les propriétés des 2 db grid sont aussi bien spécifié dans l'un que dans l'autre...

    Mais l'un semble avoir des Titres de colonnes figés a la meme place quelque soit l'ordre des colonnes (du coup les colonnes changent mais pas le titre...) alors que le deuxième voit ses titres correspondre automatiquement avec les colonnes.

    Dans les datasets les champs ont tous un DisplayLabel de renseigné.

  6. #6
    Membre expérimenté
    Avatar de Harry
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2002
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 224
    Points : 1 331
    Points
    1 331
    Par défaut
    Pour mon dernier problème la solution était de renseigner dans les champs du dataset la propriété 'DisplayLabel' sur absolument tous les champs affichés dans le dbGrid.

  7. #7
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Points : 1 561
    Points
    1 561
    Par défaut
    Regarde du côte de la RXLib, car il existe une RXDBGrid qui enregistre tout cela dans un fichier ini.

    Cordialement

  8. #8
    Futur Membre du Club
    Inscrit en
    Juillet 2004
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    salut,

    heuuu !! si j'ai bien compris tu veux mémoriser la position des colonnes d'un grid ?

    ben tu peux aussi mémoriser la taille, la fonte etc ....

    code :
    dbGrid.Columns.SaveToFile(dbGrid.Name + '.dbg');

    a part le fait que tu ai un fichier config par grid ca marche super

    On dit koi ..... merci borland

    @ +

  9. #9
    Membre expérimenté
    Avatar de Harry
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2002
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 224
    Points : 1 331
    Points
    1 331
    Par défaut
    Ahh, la je dois dire que je savais fichtrement pas, donc en theorie y doit y avoir moyen de faire un 'savetostream' pour le stocker dans la base, faudra que je teste ca

    Merci de cette précision

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

Discussions similaires

  1. GridView et GridViewColumn: comment mémoriser la position des colonnes?
    Par takinelinfo dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 07/10/2011, 15h57
  2. Extraire sous forme de string la position des colonnes d'un JTable
    Par divxdede dans le forum Codes sources à télécharger
    Réponses: 0
    Dernier message: 09/03/2011, 19h45
  3. [Lazarus] Modification position des colonnes dans un DbGrid
    Par ovni76 dans le forum Lazarus
    Réponses: 10
    Dernier message: 15/06/2009, 13h57
  4. Comment sauvegarder la position des colonnes de mon tableau ?
    Par Bruno13 dans le forum Composants VCL
    Réponses: 0
    Dernier message: 04/11/2007, 01h38
  5. position des colonnes du datagriedview qui change
    Par el_pilacho dans le forum VB.NET
    Réponses: 4
    Dernier message: 10/04/2007, 12h23

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