GESTION DE CASES À COCHER PERSONNALISÉES DANS UN STRINGGRID

Messages postés
10
Date d'inscription
dimanche 22 décembre 2002
Statut
Membre
Dernière intervention
7 septembre 2007
- - Dernière réponse : cs_Jean_Jean
Messages postés
637
Date d'inscription
dimanche 13 août 2006
Statut
Membre
Dernière intervention
13 décembre 2018
- 8 juin 2009 à 16:08
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50116-gestion-de-cases-a-cocher-personnalisees-dans-un-stringgrid

Afficher la suite 
cs_Jean_Jean
Messages postés
637
Date d'inscription
dimanche 13 août 2006
Statut
Membre
Dernière intervention
13 décembre 2018
2 -
@ Cirec.
En effet, DrawFrameControl semble intéressant et plus optimal pour des marques traditionnelles; plus universel aussi sur toutes sortes de controles. Par contre pour des graphismes spécifiques (la méthode du listImage me sembleplus intéressant.
@ AscciDeFond.
Ton source est-il de toi? Tu as du t'inspirer du la même que moi car je suis sûr que ça n'est pas sur DelphiFr que je l'avais vu. Il y a de nombreux snippets un peu partout!
C'est vrai que l'on ne réinvente pas la roue, ce quine nous empêche pas defaire preuve de créativité.
Merci pour vos remarques.
Cirec
Messages postés
3809
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
1 septembre 2019
32 -
Salut,

pour dessiner les boutons checkbox et autres controles regarde du coté de DrawFrameControl :
http://msdn.microsoft.com/en-us/library/dd162480(VS.85).aspx
c'est beaucoup plus simple et complet ;)
cs_Jean_Jean
Messages postés
637
Date d'inscription
dimanche 13 août 2006
Statut
Membre
Dernière intervention
13 décembre 2018
2 -
Merci Asciidefond pour ton commentaire!
En fait, j'ai trouvé pour les couleurs.
j'avais mis with StringGrid1 do Canvas.Brush.Style := bsClear; ce qui empêche évidemment l'attribution d'autres couleurs.
On peut donc faire par exemple pour augmenter la visibilité des lignes une couleur pour les lignes paires et une autre pour les lignes impairs.

Donc dans le DrawCell...
With StringGrid1.Canvas Do
Begin
If gdSelected In State
Then Brush.Color := clNavy // sélection
Else If Odd(ARow) then Brush.Color := Clyellow
else Brush.Color := ClSilver;
...
End
...
Je regarderai quand même tes liens...
J'attends de perfectionner un peu le source pour le republier