Bonjour à tous,
Afin d'uniformiser facilement mes composants et également pour pouvoir modifier rapidement l'apparence ou les propriétés de certains composants, j'appel à l'ouverture de chacunes de mes fiches une procédure d'initialisation:
Le problème c'est que forcément, sur certaines de mes fiches qui peuvent être assez volumineuse, l'ouverture est ralentie par cette fonction (3-4 secondes dans certains cas). existe-t-il un moyen plus efficace de gérer ce genre de chose?
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
38
39
40
41
42
43
44 Procedure ModifStyleFiche(MaForm_ : TForm); Var I : Integer; TempCmpn : TComponent; Begin Try If MaForm_ = Nil Then Exit; MaForm_.Font.Size:=8; MaForm_.Color:=clWhite; For I:=1 To MaForm_.ComponentCount Do Begin If MaForm_.Components[I-1] is TAdvGlowButton Then Begin TempCmpn:=MaForm_.Components[I-1]; TAdvGlowButton(TempCmpn).SetComponentStyle(tsOffice2013White); TAdvGlowButton(TempCmpn).Appearance.BorderColor:=clBlack; TAdvGlowButton(TempCmpn).Appearance.BorderColorChecked:=$00FAFAFA; TAdvGlowButton(TempCmpn).Appearance.BorderColorDisabled:=clBlack; TAdvGlowButton(TempCmpn).Appearance.BorderColorDown:=clActiveCaption; //... End; If MaForm_.Components[I-1] is TAdvStringGrid Then Begin TempCmpn:=MaForm_.Components[I-1]; TAdvStringGrid(TempCmpn).Ctl3D:=False; TAdvStringGrid(TempCmpn).FixedColor:=clWhite; TAdvStringGrid(TempCmpn).FixedFont.Color:=clNavy; TAdvStringGrid(TempCmpn).FixedFont.Style:=[]; TAdvStringGrid(TempCmpn).ControlLook.FixedGradientFrom:=clWhite; TAdvStringGrid(TempCmpn).ControlLook.FixedGradientTo:=clWhite; //... End; //... End; Except End; End;
Pour info, j'appelle cette procédure au moment du formcreate et non du formshow ce qui améliore déjà les performances mais ça n'est pas encore satisfaisant.
Merci d'avance pour vos conseils et vos idées.
LaNono
Partager