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 FMX Delphi Discussion :

FMX ListBox 3 colonnes mais GroupHeader 1 colonne est ce faisable ?


Sujet :

Composants FMX Delphi

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 35
    Points : 26
    Points
    26
    Par défaut FMX ListBox 3 colonnes mais GroupHeader 1 colonne est ce faisable ?
    Bonjour

    Comment peut on faire un FMX ListBox 3 colonnes mais avec des entetes de groupe sur toute la largeur de la listbox ?

    Il y a bien une solution en créant des Zones de texte pour chaque GroupHeader puis des Lisbox pour chaque groupe.... mais n'y a t il pas plus simple ?

    Voici ce que je voudrais faire ( a droite ) et ce que j'ai si je fais un ListBox 3 colonnes normal ( a gauche )
    Nom : ListBox.jpg
Affichages : 312
Taille : 83,7 Ko

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 031
    Points : 40 930
    Points
    40 930
    Billets dans le blog
    62
    Par défaut
    Citation Envoyé par pierrejean75 Voir le message
    Comment peut on faire un FMX ListBox 3 colonnes mais avec des entetes de groupe sur toute la largeur de la listbox ?
    C'est un sujet intéressant
    Il y a bien une solution en créant des Zones de texte pour chaque GroupHeader puis des Lisbox pour chaque groupe.... mais n'y a t il pas plus simple ?
    c'est ce que j'aurai fait en première approche.
    Maintenant il y a peut-être une propriété cachée à vrai dire je n'en sais rien, pour cela il faudrait vérifier quels sont les ascendants d'un GroupHeader dans les sources.

    Peut être une solution à base de TGridPanelLayout (je penche vers celui-ci) voici un test rapide juste en design
    Nom : Capture.PNG
Affichages : 301
Taille : 6,0 Ko

    ou TGridLayout ou le TFlowLayout (je suis dyslexique à leur sujet), une de ces deux composants devrait le faire.

    [Edit] au temps pour moi; il me semble que TFlowLayout correspondra mieux
    Nom : Capture.PNG
Affichages : 296
Taille : 25,8 Ko
    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

  3. #3
    Membre expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Points : 3 611
    Points
    3 611
    Par défaut
    Petit problème du TFlowLayout, qui a peut-être été amélioré depuis, c'est qu'il n'adaptait pas sa hauteur, donc pas certain que ça passe correctement dans ce cas. A vérifier.

    Sur la grille en elle-même, un TGridPanelLayout devrait être exploitable. il faut fusionner les colonnes sur les titres et empiler les composants ensuite. en revanche ça implique de savoir combien on a d'éléments.

    Autre solution : un TVertScrollBox dans lequel on empile en alignement TOP les différents composants (label ou autre pour les titres, grille de 3 colonnes pour les images, puis à nouveau label, grille, ...)
    solution qui me semble plus facile à mettre en place sans se prendre la tête avec les styles, tout dépend comment le contenu doit être renseigné (par programmation ou LiveBindings)

    l'avantage du flowlayout par rapport aux grilles, c'est qu'il prend toute la largeur et s'il y a la place de mettre 5 images, il les mettra. c'est utile quand on fait du responsif avec des interfaces devant apparaître en paysage et en portrait. s'il faut impérativement 3 colonnes, il faut passer par les grilles.

Discussions similaires

  1. [VB6] comment saisir l'entête Listbox (multi colonnes)
    Par oumarsaw dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 07/04/2006, 16h21
  2. Listbox muti-colonnes
    Par matech dans le forum Composants VCL
    Réponses: 3
    Dernier message: 31/03/2006, 10h37
  3. [C#][ListBox]Plusieurs colonnes ?
    Par Kcirtap dans le forum Windows Forms
    Réponses: 4
    Dernier message: 18/10/2005, 09h20
  4. [C#] ListBox à 2 colonnes?
    Par Piet dans le forum Windows Forms
    Réponses: 5
    Dernier message: 27/07/2005, 15h37

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