Bonjour, (10.3.3)
Il m'est venu à l'idée de charger le style principal de mon application à partir d'une base de données (objectif : donner une couleur différente en fonction de la société en cours)
Voilà en gros le code de chargement du style :
Le hic, quand je change de société et que je charge le style le cadre windows avec son titre et ses boutons "système" disparait
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 AQuery:=TFDQuery.Create(Self); try AQuery.Connection:=ConnexionBase; AQuery.SQL.Text:='SELECT * FROM SETTINGS WHERE ID=0'; AQuery.Active:=True; // Changement des FormatSettings en fonction de la société if not AQuery.FieldByName('ID').IsNull then TFormatSettings.Create(AQuery.FieldByName('IDLANG').asInteger); // Changement de style if not AQuery.FieldByName('Style').isNull then begin AStream:=TmemoryStream.Create; try TBlobField(AQuery.FieldByName('STYLE')).SaveToStream(AStream); AStream.Position:=0; StyleSociete.LoadFromStream(AStream); finally AStream.Free; end; end else StyleSociete.Clear; AQuery.Active:=False; finally AQuery.Free; end;
Je dois louper quelque chose de tout bête !
- si après chargement je fais un ApplyStyleLookup cela ne change rien
Partager