Bonjour à tous,
SVP y a-t-il une possibilité de donner a l'utilisateur final la possibilité de déplacer les colonnes d'un dbgrid avec sauvegarde des nouveaux indices pour une prochaine utilisation ?
cordialement.
Bonjour à tous,
SVP y a-t-il une possibilité de donner a l'utilisateur final la possibilité de déplacer les colonnes d'un dbgrid avec sauvegarde des nouveaux indices pour une prochaine utilisation ?
cordialement.
Bonjour,
il y a certainement moyen de coder ça . Cependant faut-il réinventer une roue existante ? je pense par exemple à la smdbGrid de la suite de composants freeware smcpmt qui fait ça très bien (et plus encore)
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
Bonjour,
Oui, mais cela vous demandera un peu de travail (de code donc ).
Au préalable, il faut inclure dgColumnResize dans la propriété Options de la grille.
Ensuite, il faut capturer l'évènement de déplacement de la colonne en écrivant un gestionnaire d'événement pour OnColumnMoved et écrire le code adéquat par exemple enregistrer la position et la taille des colonnes dans un fichier ini.
Si ce doit être un paramétrage propre à chaque utilisateur au sens Windows, attention à l'emplacement d'enregistrement de ce fichier.
Si l'utilisateur est identifié par rapport à l'application, en tenir compte dans le fichier ini (un paramétrage par utilisateur), mais la portée de ce paramétrage sera limité au poste d’exécution. Pour une portée plus générale, il faudrait par exemple le stocker dans la base de données...
Philippe.
salut
le TDbgrid fait cela tres bien d'origine ... il te suffit de mettre l'option columnResize a true
si tu veux le sauvegarder il y a quelque contrainte que tu vas devoir prendre en compte
comme le dis Ph. B.
le mieux serais de creer ton dbgrid de façon dynamique comme cela tu pourra gerer l'ordre de tes colonne de façon individuel
pour le stockage de l'ordre tu as different possiblite soit au sain meme de ta base de donnée soit par un fichier (ini ou autre) afin que chaque utilisateur puisse le faire a leur convenance
Blaise PascalNous souhaitons la vérité et nous trouvons qu'incertitude. [...]
Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
PS : n'oubliez pas le tag
Merci a vous tous ,
je vais essayé tous de suite .
Merci a vous tous , ca marche tres bien .
je vais utilisé un fichier ini pour sauvegarder l'emplacement
Ph. B. a écrit :
Oui, mais cela vous demandera un peu de travail (de code donc ).
Au préalable, il faut inclure dgColumnResize dans la propriété Options de la grille.
Ensuite, il faut capturer l'évènement de déplacement de la colonne en écrivant un gestionnaire d'événement pour OnColumnMoved et écrire le code adéquat par exemple enregistrer la position et la taille des colonnes dans un fichier ini.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager