Bonjour;
pouvez vous m'aidez svp de me donner comment ecrire dand boucle while une condition comme celle ci:
while datetimepicker.date différent d'une date donnée par exple : datetimepicker.date<>(02/03/yearof(now)+1)
Cordiallement.
Bonjour;
pouvez vous m'aidez svp de me donner comment ecrire dand boucle while une condition comme celle ci:
while datetimepicker.date différent d'une date donnée par exple : datetimepicker.date<>(02/03/yearof(now)+1)
Cordiallement.
faire un while sur la valeur d'un Datetimepicker me semble très douteux...
DaysBetween permet aussi d'avoir la différence en jour ...
Expliquez mieux votre problème, surement qu'il y a plus simple.
Pourquoi vouloir faire une boucle, surtout sur une Date, quel serait l'incrément, IncDay par exemple (même si celle ne demande pas une fonction, c'est un cas particulier)
La plus importante compétence du développeur, savoir trouver l'information, bien plus que tout le reste ... et le forum démontre tous les jours à quel point c'est rare.
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
Je pense que c'est plutôt dans la partie (02/03/yearof(now)+1) qu'il y a un gros problème.
Moi aussi je trouve absurde cette histoire de boucle sur un DateTimePicker mais s'il devait y avoir une comparaison il faudrait déjà que la date de comparaison soit bien écrite d'où l'utilisation de EncodeDate.
Si vous vous demandez pourquoi je passe par une variable aDate au lieu d'incrémenter DateTimePicker1.date, c'est parce que l'affichage au moment de la boucle ne fonctionnera pas ou mal
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 uses System.DateUtils; procedure TForm1.Button1Click(Sender: TObject); var adate : Tdate; begin adate:=datetimepicker1.date; while adate<=EncodeDate(Yearof(Date)+1,03,02) do begin // un traitement if (DayOftheWeek(adate)<>DaySaturday) AND (DayOftheWeek(adate)<>DaySunday) then memo1.lines.add(FormatDateTime('dd/mm/yyyy',Adate)); aDate:=IncDay(aDate,1); end; DateTimePicker1.Date:=aDate; end;
Partager