Suite aux conseils lors d'une question précédente, j'inclus un TScrollBar dans mon Composant TTrameList de la manière suivante :

section private de la classe tu composant:

Constructeur du composant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
	Psb=new TScrollBar(Owner);
	Psb->Parent=this;
	Psb->Kind = sbVertical;
	Psb->Align = alRight;
	Psb->OnChange=SBChange;
Voilà le problème : sous l'EDI après avoir placé le composant il affiche le scrollbar sous-jacent (cool). Le problème c'est que si je lance l'executable il en affiche deux cote à cote.

Si je regarde le DFM de ma form, il un ScrollBar apparait dans mon TTrameList. Comme j'en cree un dans le constructeur, ca en fait deux au total.

Comment prévenir cela ?

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
        object tl_trame: TTrameList
          Left = 0
          Top = 13
          Width = 413
          Height = 419
          Align = alClient
          TabOrder = 0
          TabStop = True
          Color = 12048843
          Description = True
          ColorIn = 15790335
          ColorOut = 16773360
          ColorUnk = 13172735
          Font.Charset = ANSI_CHARSET
          Font.Color = clBlack
          Font.Height = -12
          Font.Name = 'Lucida Console'
          Font.Style = []
          LineHeight = 24
          NumSel = -1
          object TScrollBar
            Left = 387
            Top = 0
            Width = 13
            Height = 419
            Align = alRight
            Kind = sbVertical
            Max = 0
            PageSize = 0
            TabOrder = 1
          end
        end
      end