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 :

delphi FMX 10.4


Sujet :

Composants FMX Delphi

  1. #1
    Membre à l'essai
    Femme Profil pro
    Développeur informatique
    Inscrit en
    septembre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : septembre 2007
    Messages : 15
    Points : 12
    Points
    12
    Par défaut delphi FMX 10.4
    Bonjour, Sergio va sûrement encore me tomber dessus, mais c'est pas grave ;-) En VCL dans les listbox, on avait la possibilité de choisir via OnDrawItem les couleurs des lignes selon des critères (une ligne sur deux ou si telle condition, dans ce cas telle couleur ...) Chose que je ne retrouve pas du tout dans FMX ... Je ne veux pas colorier le fond de ma box, ni le texte, mais bien faire en sorte que si la date indiquée dans telle ligne est inférieure à la date du jour, dans ce cas la ligne est en rouge, autre condition => autre couleur etc ...
    Une idée à me transmettre (sans m'eng... ?) merci !!! vous êtes top. Ah, j'ai cherché plus d'une heure sans trouver la réponse avant de poster ce message ...
    Astrid.

  2. #2
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    novembre 2002
    Messages
    8 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : novembre 2002
    Messages : 8 227
    Points : 26 643
    Points
    26 643
    Par défaut
    OnPaint n'est pas dans la philosophie FMX je pense...c'est un framework basé sur des composants qui font le rendu...c'est typique de la différence de rendu OpenGL et FMX que j'ai fais dans Perseverance3D, en VCL j'ai un GLPaint qui fait le rendu de la scène, sous FMX je construits des TMesh qui se chargent d'afficher leur contenu quand bon leur semble.

    alors il y a des raisons à cela, notamment tu peux mettre n'importe quel composant FMX dans un conteneur qui a un effet graphique spécifique ou qui subit des transformations 3D, etc...donc le contexte graphique d'une application FMX est un poil plus compliqué que le rendu d'un composant VCL sur un Canvas...mais c'est aussi plus lourd
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    13 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 13 093
    Points : 35 618
    Points
    35 618
    Billets dans le blog
    54
    Par défaut
    Citation Envoyé par Astrid69 Voir le message
    Bonjour, Sergio va sûrement encore me tomber dessus, mais c'est pas grave ;-)
    Je suis d'une patience d'//
    Une idée à me transmettre (sans m'eng... ?)
    Je ne ni ne promis, quoique c'est bien la peine que je me décarcasse
    la réponse ou partie se trouve dans mon blog enfin pour les TListView, je suis moins à l'aise avec les TListbox (s'il est vraiment question de TListBox FMX)
    pour les Tlistboxs je n'ai rédigé que ceci https://www.developpez.net/forums/bl...istbox-styles/ mais ça devrait répondre à la question.
    Il doit y avoir aussi un match entre TListView et TListBox quelque part mais où l'ai je mis, l'ai-je publié ? L'âge et Aloïs me rattrapent.
    merci !!! vous êtes top.
    avec un peu de cirage ça passe toujours mieux
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  4. #4
    Membre extrêmement actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    octobre 2017
    Messages
    1 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : octobre 2017
    Messages : 1 053
    Points : 3 656
    Points
    3 656
    Par défaut
    Citation Envoyé par Astrid69 Voir le message
    Bonjour, Sergio va sûrement encore me tomber dessus, mais c'est pas grave ;-) En VCL dans les listbox, on avait la possibilité de choisir via OnDrawItem les couleurs des lignes selon des critères (une ligne sur deux ou si telle condition, dans ce cas telle couleur ...) Chose que je ne retrouve pas du tout dans FMX ... Je ne veux pas colorier le fond de ma box, ni le texte, mais bien faire en sorte que si la date indiquée dans telle ligne est inférieure à la date du jour, dans ce cas la ligne est en rouge, autre condition => autre couleur etc ...
    Une idée à me transmettre (sans m'eng... ?) merci !!! vous êtes top. Ah, j'ai cherché plus d'une heure sans trouver la réponse avant de poster ce message ...
    Astrid.
    Avec FMX, la solution est toujours dans les styles!

    1° Tu fais plusieurs styles listboxitem (un avec un fond rouge, un avec un fond vert, etc...)

    2° A l'aide du code tu appliques l'un ou l'autre style.

    Par exemple, pour avoir une ligne sur deux d'une couleur, on aura un code du style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     if Odd(myListBox.Items.count) then ListBoxItem.StyleLookup:='ListBoxItemStyleRouge'
      else
          ListBoxItem.StyleLookup:='ListBoxItemStyleBlanc';

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    13 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 13 093
    Points : 35 618
    Points
    35 618
    Billets dans le blog
    54
    Par défaut
    Bonjour,
    Citation Envoyé par Anselme45 Voir le message
    Avec FMX, la solution est toujours dans les styles!
    c'est en partie vrai

    Citation Envoyé par Anselme45 Voir le message
    1° Tu fais plusieurs styles listboxitem (un avec un fond rouge, un avec un fond vert, etc...)
    2° A l'aide du code tu appliques l'un ou l'autre style.
    Ceci est valable si la liste est remplie par code mais si la liste est remplie par Livebindings ce n'est pas la même chose.
    Il vaut mieux, en ce cas n'avoir qu'un style d'item, avec pour fond un TRectangle (avec hittest=true ) et utiliser l'évènement onFilledListItem du lien pour gérer la couleur
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

Discussions similaires

  1. Atelier et formation Delphi FMX, à Paris
    Par Maxime Capellot dans le forum Delphi
    Réponses: 0
    Dernier message: 19/10/2017, 09h26

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