bonjour à toute et à tous...
J'utilise un composant qui permet de choisir le thème de mon application, concretement j'ai 3 choix (Bleu, silver, olive) selon ces choix toutes l'application ce modifie.
Mais récemment j'ai mis ma form principal en fsMDIForm (auparavant elle etait en fsnormal), depuis le fond de ma form principal (qui n'a aucun composant) ne se redessine plus !
Bien évidemment j'ai essayer
Self.repaint;
Self.invalidate;
Self.Refresh;
Mais il n'y à aucun effet. Si je remet ma form principal en fsnormal cela fonctionne trés bien sans aucun des ses trois paramètres (repaint, invali...).
Voici via un item d'un menu la procédure de changement de couleur :
Où je fais mon erreur ?
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 procedure TFPrincipal.Argent1Click(Sender: TObject); Var FIni:TiniFile; begin Try JvPopupMenu4.Items[0].Items[0].Checked := True; JvPopupMenu4.Items[0].Items[1].Checked := False; JvPopupMenu4.Items[0].Items[2].Checked := False; JvPopupMenu4.Items[0].Items[4].Checked := False; JvNavPaneStyleManager1.Theme := nptXPSilver; Self.Color := JvNavPaneStyleManager1.Colors.ToolPanelHeaderColorFrom; Fini := Nil; Try FIni:=TiniFile.Create(ExtractFilePath(Application.ExeName)+'Setting.ini.txt'); FIni.WriteInteger('THEME','NumeroSubMenu',0); Finally if assigned(Fini) then FIni.Free; end; Except on E : Exception do Begin ShowMessage(''); end; end; end;
PS : si je reduit ma fenetre là elle se redessine.
Partager