Bonjour,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 
//    TGlyphColors = class
//      private
//        FColors: array[0..3] of TAlphaColor;
//        function GetColor(Index: Integer): TAlphaColor;
//        procedure SetColor(Index: Integer; Value: TAlphaColor);
//      public
//        property Navigation : TAlphaColor index 0  read GetColor
//                                        write SetColor;
//        property Edit : TAlphaColor index 1   read GetColor
//                                        write SetColor;
//        property Cancel : TAlphaColor index 2 read GetColor
//                                        write SetColor;
//        property Colors[Index: Integer]: TAlphaColor
//                                        read GetColor
//                                        write SetColor;
//    end;
 
    TColoredBindNavigator = class(TCustomBindNavigator)
    private
      FColors: array [0 .. 3] of TAlphaColor;
      FNavigation : TAlphaColor;
      FEdit : TAlphaColor;
      FCancel : TAlphaColor;
      function GetColor(const Index: Integer): TAlphaColor;
      procedure SetColor(const Index: Integer; const Value: TAlphaColor = TAlphaColors.Null);
    protected
      property Navigation: TAlphaColor index 0 read GetColor write SetColor;
      property Edit: TAlphaColor index 1 read GetColor write SetColor;
      property Cancel: TAlphaColor index 2 read GetColor write SetColor;
    public
      { Déclarations publiques }
      constructor Create(AOwner: TComponent); override;
      destructor Destroy; override;
    published
      ??????
    end;
Après avoir (plus ou moins) réalisé mon composant dérivé d'un TCustomGrid en ayant les trois propriétés (Navigation, Edit, Cancel) je voudrais avoir un propriété "racine" GlyphColors qui proposerait le remplissage des 3 propriétés

J'ai bien réussi un truc comme ça via un TCollection
Nom : Capture.PNG
Affichages : 263
Taille : 19,6 Ko
mais cela ne correspond pas trop à mon attente les x-GlyphColor ... c'est pas très parlant, j'eusse aimé à la place les noms cités au dessus

D'où mon code différent. En commentaire la syntaxe est correcte mais impossible de mettre
property Colors[Index: Integer]: TAlphaColor read GetColor write SetColor;dans le code du composant (encore un truc qui me fait douter de ma maitrise de Delphi !)