salut tout le monde
qq'un qui me ? a ajouter un progressbar sur un spleeshscreen
merci d'avance
salut tout le monde
qq'un qui me ? a ajouter un progressbar sur un spleeshscreen
merci d'avance
Peux-tu fournir le code du TSplashScreen (hérité d'une TForm), problablement inspiré des exemples existants sur le site !
Ensuite, quel est ton problème exact ?
Quelle est la difficulté précise ?
J'ai tapé "Delphi + un progressbar sur une spleeshscreen" et :google m'a proposé "Delphi + un progressbar sur une splashscreen", trop fort, et l'on tombe sur How to put progress bar on splash screen ? - Delphi Pages Forums
et plein d'autres pages à consulter
Si tu as les moyens, tu peux acheter TMS TAdvSmoothSplashScreen, peut-être que Delphi XE propose les Smooth components par défaut !
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !![]()
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !
L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs
c'est très simple
-ajoutter un composant TProgressBar (ou un Gauge) dans la fenetre Splasch
- dans le menu principal de delphi allez a "voire/Unités " et selectionnez l'unité principale de votre projet
-placer la progression de votre ProgressBar après chaque création d'une fenetre de votre programme , exemple de code :
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 with Tsplach.Create(nil) do try show; update; Application.Initialize; Application.Title := 'Titre de votre application'; Application.CreateForm(TData, Data); ProgressBar .Position:=10; Application.CreateForm(TMain, Main); ProgressBar .Position:=20; Application.CreateForm(TState, State); ProgressBar .Position:=50; Application.CreateForm(TActual, Actual); Application.CreateForm(Tperso, perso); Application.CreateForm(Tmotpasse, motpasse); ProgressBar .Position:=60; Application.CreateForm(Tpropos, propos); ProgressBar .Position:=70; Application.CreateForm(TDossier, Dossier); ProgressBar .Positions:=80; Application.CreateForm(Tcentre, centre); ProgressBar .Position:=100; finally free; end; Application.Run;
on peut aussi le faire dans le projet
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 begin Application.Initialize; Application.Title := 'blbla'; fSplach := TfSplash.Create(Application); { Création la fenêtre de Splash } fSplach.Show; { Affichage de cette fenêtre } fSplach.Progress.Maximum := 6; fSplach.Progress.Position := 1; fSplach.Update; Application.CreateForm(TfDivers, fDivers); fSplach.Progress.Position := 2; fSplach.Update; { forçage de l'affichage de la fenêtre } // MessageDlg('2', mtWarning, [mbOK], 0); Application.CreateForm(TfData, fData); fSplach.Progress.Position := 3; fSplach.Update; { forçage de l'affichage de la fenêtre } Application.CreateForm(TfFicheObs_Data, fFicheObs_Data); fSplach.Progress.Position := 4; fSplach.Update; { forçage de l'affichage de la fenêtre } Application.CreateForm(TfAffiche_Data, fAffiche_Data); fSplach.Progress.Position := 5; fSplach.Update; { forçage de l'affichage de la fenêtre } // MessageDlg('3', mtWarning, [mbOK], 0); Application.CreateForm(TfPrincipal, fPrincipal); fSplach.Progress.Position := 6; fSplach.Update; { forçage de l'affichage de la fenêtre } fSplach.Progress.Position := 7; fSplach.Update; { forçage de l'affichage de la fenêtre } fSplach.Close; { Fermeture la fenêtre de Splash } fSplach.Release; { Destruction de la fenêtre } Application.Initialize; Application.Run; end.
pour moi je préfère mettre tout le code création et de destruction de la forme de spalachscree dans l'unité de SScren pour qu'elle être autonome et réutilisable.![]()
Bonjour Edam,
avec ta solution, comment fais tu pour que la jauge s'ajuste à chaque création de fenêtre du projet ?
A+
Charly
Partager