Affichage de l'année en cours dans un Tedit [Résolu]

Signaler
Messages postés
3
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
1 novembre 2005
-
Messages postés
4202
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
13 juin 2020
-
Comment faire afficher l'année en cours et l'année n-1, n-2... dans un Tedit ?

4 réponses

Messages postés
40
Date d'inscription
dimanche 2 février 2003
Statut
Membre
Dernière intervention
16 décembre 2006
1
Ta fiche comporte un événement onCreate :
Code donc cet événement comme tu le ferais sur le Onclick de ton bouton...

procedure TForm1.FormCreate(Sender: TObject);
var
annee,moi,jour : word;
begin
DecodeDate(now,annee,moi,jour);
Label1.caption := inttostr(annee);
end;

BV94
Messages postés
40
Date d'inscription
dimanche 2 février 2003
Statut
Membre
Dernière intervention
16 décembre 2006
1
var
annee,moi,jour : word;
begin
DecodeDate(now,annee,moi,jour);
Edit1.Text := inttostr(annee);
Edit2.Text := inttostr(annee-1);
end;

BV94
Messages postés
3
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
1 novembre 2005

Je te remercie pour cette réponse rapide BV94. Ce code fonctionne à merveille pour faire affichier l'année en cours.
Par contre, au lieu de l'afficher dans un Tedit, je l'affiche dans un Tlabel par label1.caption. Mais je n'arrive pas à faire exécuter automatiquement la fonction à l'ouverture d'une form : je suis obligé de cliquer sur le label pour faire chager le nom de label par 2005.

Comment faire?
Messages postés
4202
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
13 juin 2020
37
en plus court est sans variables locales grace a FormatDateTime() :



caption := 'juste l''année longue et courte '+FormatDateTime('yyyy (yy)', date);

caption := 'juste le jours texte et chiffre '+FormatDateTime('dddd, dd', date);

caption := 'juste le mois texte et chiffre '+FormatDateTime('mmmm, mm', date);

caption := 'la date complete '+FormatDateTime('dddd dd mmmm (mm) yyyy',date);