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

Lazarus Pascal Discussion :

Modification position des colonnes dans un DbGrid [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut Modification position des colonnes dans un DbGrid
    Bonjour,
    Sous lazarus je souhaite modifier dans un DbGrid la place des colonnes.
    Est-ce possible ?
    Si oui comment ?
    Sous delphi 4 il suffisait d'éditer les colonnes et changer leur position mais sous lazarus ?
    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    J'ai l'habitude de créer les colonnes dans le dataset (Zquery en ce qui me concerne car j'utilise Zeos) en les important directement à partir des champs de la table. Là, elles sont très facilement "manipulables". Je suppose que c'est pareil avec les composants natifs.
    Cordialement. Gilles

  3. #3
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Dans les options de Sqlite3Dataset un double clic sur FieldDefs affiche les champs de la table sélectionnée, on peut les déplacer dans cette fenêtre mais cela n'a pas d'effet sur les champs affichés dans le DbGrid.
    Alors j'ai réécris les tables de ma base pour les avoir classés selon mes voeux.
    Autre problème avec le DbGrid je n'ai encore touvé la méthode pour modifier la largeur des colonnes.
    Encore merci

  4. #4
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Salut Chris37,
    Dans mon dbgrid je ne trouve pas cette fonction index, ni dans le sqlite3dataset.
    Je précise que je suis linux fedora 10.
    Alors merci de me donner plus de précisions, je ne suis pas un expert de lazarus.

  5. #5
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Pour Chris37,
    Pour moi c'est bonjour, il faut dormir la nuit,
    Trêve de plaisanterie, dans l'inspecteur d'objets quand j'ai sélectionné mon DbGrid j'ai bien une propriété "columns" qui me permet afficher une petite fenêtre mais je ne peux pas y voir les colonnes de mon DbGrid.

    Moins novice sous delphi 4, un ancêtre, le fait de sélectionner les colonnes permet de modifier leur largeur, naturellement lazarus n'est pas delphi, alors STP un peu plus d'explications ou une adresse de documentation.
    Merci d'avance

  6. #6
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Toujours mes difficultés avec le DbGrid, ayant abonné provisoirement les tables sous sqlite, je suis revenu à des tables dbase sous lazarus et sous linux, dans ce cas il me semble que les colonnes du DbGrid ont une largeur en relation avec le nombres de caractères définis dans la table dbase, ce que je n'obtiens pas avec sqlite et de plus en cours d'exécution je peux les modifier, elles reprennent leur largeur à la fermeture de l'application. Mais je ne peux pas afficher les champs de la table active avec le double click sur l'option colomns du dbgrid, cette action ne semble réservée à l'ajout de champs dans le DbGrid, mais pour l'instant je n'en vois pas la raison.
    Autre essai si l'option AutoFilleColumns est à True je vois toutes les colonnes d'une de mes tables sqlite, mais dans le cas inverse en dehors seule la colonne key à une taille ordinaire les autres sont immenses, donc non utilisable visuellement.

  7. #7
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Je n'ai pas de veine, cette question sur les dbgrid n'inspire pas les spécialistes.
    j'abandonne donc sqlite puisqu'avec des fichiers dbase je ne rencontre pas ce problème.
    Et je sais écrire dans ces fichiers depuis lazarus sous linux.
    A+

  8. #8
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Je ne sais pas si votre problème est toujours d'actualité avec sqlite. J'ai regardé ce matin sur un ancien programme réalisé (il y a qqs mois) sous Windows (sqlite-3) et Linux (sqlite-3.6.4.so) avec ZeosLib.

    J'utilise Zconnection, ZQuery, DataSource et dbGrid. Dans le Zquery, je charge mes champs, les place dans l'ordre choisi et par le DisplayWidth de chaque champ, je définis leur largeur.

    Cela fonctionne très bien : je viens de vérifier par acquis de conscience. Je l'ai précisé plusieurs fois sur ce forum. Je ne suis pas content des connecteurs natifs : j'ai dû les utiliser sous un MacOs 10 Tiger parce que je n'arrivais pas à installer ZeosLib sur cet appareil... A l'époque, j'ai noté des dysfonctionnements rédhibitoires pour une utilisation "usuelle" (http://www.developpez.net/forums/d69...r-dexperience/).

    Cordialement. Gilles

  9. #9
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Merci Selzy,
    Mais comme j'ai trop peu de connaissances sur sqlite et que je ne trouve pas de documents en français sur ce sujet, j'ai abandonné et je suis revenu à un sujet que je maitrise mieux sous linux c'est les fichiers dbase.
    Merci encore

  10. #10
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Me revoilà après de multiple manipulation j'ai trouvé, pour l'instant sous xp, car je ne suis pas chez moi comment personnaliser les colonnes d'un dbgrid.
    Donc voici ce que j'ai trouvé, il y a peut-être mieux mais c'est plus cher !
    1) Avoir sur sa fiche un composant dataset avec une table active, un datasource et le dbgrid avec son association au datasource.
    2) sélectionner le dbgrid, puis dans l'inspecteur (F11) faire un double clik sur columns, puis dans la nouvelle fenêtre créer autant de colonnes que l'on veut
    3) Choisir dans cette fenêtre un nom de colonne puis F11 pour avoir une autre vue de l'inspecteur
    4) choisir dans la liste possible de FiedName le nom du champ et en bas ajuster la taille de la colonne
    5) recommencer pour les autres champs
    6) on peut aussi déplacer les colonnes avec la flèche haut
    Précision la valeur de AutoFillColumns doit être à false.
    Voila une trouvaille qui répond à mon besoin d'un dbgrid avec les colonnes personnalisées, naturellement il faut sauf erreur un dbgrid pour chaque afiichage différent.
    Donc pour moi sauf si cette manipulation ne fonctionne pas sous linux c'est ok.
    Je le saurais la semaine prochaine.

  11. #11
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Pour moi le problème de la taille des colonnes d'un Dbgrid est résolu même sous linux, selon les manipulations indiquées dans le post précédent.
    A+

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

Discussions similaires

  1. Modification des colonnes dans un dbgrid
    Par LuckyLuke56 dans le forum Langage
    Réponses: 9
    Dernier message: 17/03/2009, 19h15
  2. 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
  3. Affichage du titre des colonnes dans un DBGrid
    Par Debure dans le forum C++Builder
    Réponses: 6
    Dernier message: 05/10/2005, 23h41
  4. [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
  5. DBGrid : enregister la position des colonnes
    Par Harry dans le forum Bases de données
    Réponses: 8
    Dernier message: 21/07/2004, 21h27

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