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

Changer le design/la couleur d'une scrollbar/TEdit ?


Sujet :

Composants VCL Delphi

  1. #1
    Membre habitué

    Inscrit en
    Février 2005
    Messages
    356
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 356
    Points : 175
    Points
    175
    Par défaut Changer le design/la couleur d'une scrollbar/TEdit ?
    Bonjour,

    Voila j'utilise le composant TtsGrid qui est un tableau amélioré sur Delphi 6.

    Pour rendre mon application plus jolie, je lui ai appliqué un skin malheureusement mon TtsGrid n'est pas modifié.

    Je souhaiterais modifier sa scrollbar horizontale et verticale afin de la rendre comme celle-ci.


    Je possède les sources du TtsGrid. Selon vous, comment puis-je m'y prendre ?
    - Que dois-je rechercher dans les sources du composant ?
    - Qu'est-ce qu'il faudrait modifier...?

    N'ayant jamais modifier de composant graphique,
    Quelle est l'idée générale lorsque l'on veut effectuer ce genre de modification ?

  2. #2
    Membre habitué

    Inscrit en
    Février 2005
    Messages
    356
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 356
    Points : 175
    Points
    175
    Par défaut
    D'ailleurs pour ma connaissance personnel et ainsi pour commencer doucement.

    Sur un TEdit, j'aimerais bien savoir comment modifier la couleur du contour.

    Je peux mettre la propriété Ctl3D du TEdit à false et dans ce cas, la zone d'édition blanche est entourée d'un trait fin noir. (Il n'y a plus de relief sur le composant)

    Si je veux modifier la couleur du trait, comment dois-je faire ???

    Et peut-on mettre la couleur que l'on veut ou faut-il mettre une couleur connu par l'IDE (clNavy, clRed, clGreen...) Comment mettre un bleu très clair ?

  3. #3
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 676
    Points : 25 491
    Points
    25 491
    Par défaut
    Pour modifier la couleur du trait, cela doit dépendre du thème, voir ce que les tréfonds des API propose (ou les Delphi très récents, idem, je suis en 6/7), à par pas de bord et un TShape !

    Pour la Couleur, Si le Thème Windows ne pose pas de soucis
    Pour un Bleu, clair, c'est ABVR $00FFEEEE

    Pour les Scroll, c'est des composants Windows, tes ScrollBar, tu les sort de quelques part ?

    Rien que cacher une Scroll d'une DBGrid c'est déjà pénible, via ShowScrollBar parce qu'il décide de la remettre tout le temps ! (moi j'ai bidouillé un truc SANS surcharge de composant)

    Si tu peux modifier les sources du TtsGrid (fait gaffe, si le compo évolue, soit tu ne suis pas, soit tu reprend tout ton code modifié), faut que tu fouille comment il affiche ses Barres, voir CreateWindowHandle et Style d'un TWinControl

    Il faudrait l'empecher de mettre WS_VSCROLL et WS_HSCROLL en surchargeant CreateParams et de mettre tes propres ScrollBars (en y attachant tous les Events nécessaires)

  4. #4
    Membre habitué

    Inscrit en
    Février 2005
    Messages
    356
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 356
    Points : 175
    Points
    175
    Par défaut
    Je développe avec Delphi 6.

    Concernant le TEdit, oui le thème windows peut éventuellement modifier la couleur.

    Par contre, je pense qu'il doit avoir une possibilité de fixer une couleur, quelque soit le thème.
    Sinon tu me donne le code hexa mais à quel propriété je l'affecte ? A quel endroit ?

    Pour les scrollbar, elles sont associées au TtsGrid. A mon avis oui, ce sont les scrollbar de windows accolé au tableau. (Malheureusement quand je met un skin, elle ne change pas d'apparence)


    => Quand j'y pense c'est une belle merde (dans le sens où ce n'est pas du tout simple) Ya pas un autre moyen de faire ?
    Les réacteurs de skin ne font pas autant de modification, si ?

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 676
    Points : 25 491
    Points
    25 491
    Par défaut
    Il n'y a pas de proprité BorderColor, soif fouiller dans les API, sont mettre Borstyle à BsNone et Ajouter un Shape !

    Ton screenshot montre déjà des Edit avec un autre couleur, c'est donc que tu as déjà trouvé comment modifié la couleur non ? ou c'est une maquette fait sous Paint ?

    Je t'avoue que je n'ai jamais trop bossé sur le "style" d'une appli, je fais des trucs très moche en thème windows classique (ben Delphi 6 est en thème classique lorsque l'on design sur l'IDE) et advienne que pourra sur XP et Seven !

  6. #6
    Membre habitué

    Inscrit en
    Février 2005
    Messages
    356
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 356
    Points : 175
    Points
    175
    Par défaut
    Merci pour ton info. C'est vrai que c'est pas bête de virer le bord du TEdit et mettre un TShape.

    Sinon pour la capture du haut, c'est un skin qui provient de http://www.link-rank.com/

Discussions similaires

  1. Changer la palette de couleur d'une BufferedImage
    Par bruno bdf dans le forum Graphisme
    Réponses: 2
    Dernier message: 24/10/2012, 17h30
  2. changer la palette de couleurs d'une image
    Par dawadam dans le forum 2D
    Réponses: 5
    Dernier message: 13/05/2008, 18h08
  3. Réponses: 8
    Dernier message: 14/05/2004, 11h18
  4. changer couleur d'une "case" selon clique
    Par Jéjé2reims dans le forum MFC
    Réponses: 4
    Dernier message: 05/02/2004, 12h19
  5. [VB6]Changer la couleur d'une ligne d'un ListView
    Par Troopers dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 14/03/2003, 17h02

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