Bonjour; :D
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.
Version imprimable
Bonjour; :D
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.
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 malCode:
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;