IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Pascal Discussion :

Essai d'une horloge numérique [Flash Pascal]


Sujet :

Flash Pascal

  1. #1
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 070
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 070
    Points : 15 454
    Points
    15 454
    Billets dans le blog
    9
    Par défaut Essai d'une horloge numérique
    Bonjour !

    J'ai essayé de faire une petite horloge numérique. Elle a deux défauts.

    Le premier, c'est que lorsqu'il y a, par exemple, 7 secondes, l'horloge affiche "7" et non pas "07" comme il le faudrait. Comment vous y prendriez-vous pour corriger cela ?

    Le deuxième défaut, plus grave, c'est que l'horloge s'initialise une seule fois, à l'ouverture de la page, et ensuite reste figée. C'est le même problème que j'avais rencontré avec ma trotteuse, mais je ne vois pas comment transposer la solution à un objet de type TextField.

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    program Exemple; uses Flash8, Date;
     
    {$FRAME_WIDTH    272}
    {$FRAME_HEIGHT    48}
    {$FRAME_RATE      32}
    {$BACKGROUND $eeeeee}
     
    var
      d: TDate;
      f: TextFormat;
      m: MovieClip;
      t: TextField;
     
    begin
      d:=TDate.Create;
     
      f:=TextFormat.Create('Tahoma',24);
      f.color:=$555555;
      f.align:='center';
      f.bold:=True;
     
      m:=MovieClip.Create(nil,'m',0);
      m.beginFill($cccccc);
     
      m.lineStyle(1,$000000);
      m.moveTo(0,32);
      m.lineTo(0,0);
      m.lineTo(256,0);
      m.lineTo(256,32);
      m.lineTo(0,32);
     
      m._x:=8;
      m._y:=8;
     
      t:=TextField.Create(m,'t',0,0,0,256,32);
      t.setNewTextFormat(f);
     
      t.text:=IntToStr(d.getHours);
      t.text:=t.text+#32#58#32;
      t.text:=t.text+IntToStr(d.getMinutes);
      t.text:=t.text+#32#58#32;
      t.text:=t.text+IntToStr(d.getSeconds);
     
      //t.setTextFormat(f);
    end.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  2. #2
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 430
    Points
    28 430
    Par défaut
    voici

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
    program Exemple; uses Flash8, Date;
     
    {$FRAME_WIDTH    272}
    {$FRAME_HEIGHT    48}
    {$FRAME_RATE      32}
    {$BACKGROUND $eeeeee}
     
    type
      THorloge = class(MovieClip)
        procedure onEnterFrame;
      end;
     
    var
      d: TDate;
      f: TextFormat;
      m: THorloge;
      t: TextField;
     
    function IntToStr2(i: Integer): string;
    begin
      Result := IntToStr(i);
      if i < 10 then
        Result := '0' + Result;
    end;
     
    procedure THorloge.onEnterFrame;
    begin
      d:=TDate.Create;
      t.text:=IntToStr(d.getHours);
      t.text:=t.text+#32#58#32;
      t.text:=t.text+IntToStr2(d.getMinutes);
      t.text:=t.text+#32#58#32;
      t.text:=t.text+IntToStr2(d.getSeconds);
    end;
     
    begin
     
      f:=TextFormat.Create('Tahoma',24);
      f.color:=$555555;
      f.align:='center';
      f.bold:=True;
     
      m:=THorloge.Create(nil,'m',0);
      m.beginFill($cccccc);
     
      m.lineStyle(1,$000000);
      m.moveTo(0,32);
      m.lineTo(0,0);
      m.lineTo(256,0);
      m.lineTo(256,32);
      m.lineTo(0,32);
     
      m._x:=8;
      m._y:=8;
     
      t:=TextField.Create(m,'t',0,0,0,256,32);
      t.setNewTextFormat(f);
     
     
      //t.setTextFormat(f);
    end.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 070
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 070
    Points : 15 454
    Points
    15 454
    Billets dans le blog
    9
    Par défaut
    Merci bien!

    Ça a l'air simple une fois qu'on le voit, mais encore fallait-il le trouver.

    Je crois que ma page d'exemples va commencer à avoir de l'allure.
    Fichiers attachés Fichiers attachés
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  4. #4
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 070
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 070
    Points : 15 454
    Points
    15 454
    Billets dans le blog
    9
    Par défaut
    Paul TOTH ayant eu la gentillesse de mentionner mes exemples Flash-Pascal en inaugurant le nouveau forum, j'ai cherché à rendre la page en question un peu plus intéressante.
    J'ai retravaillé mon horloge numérique, mais cette fois je ne l'ai pas insérée dans une page html. Le fichier swf s'ouvre directement dans le navigateur. C'est beaucoup plus joli, je trouve. En travaillant de cette façon, avec le souvenir des dernières discussions, j'ai commencé à mieux comprendre l'affichage des animations Flash.

    Je peux déclarer les dimensions suivantes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    {$FRAME_WIDTH 40}
    {$FRAME_HEIGHT 30}
    et avoir au bout du compte une image qui remplit toute la fenêtre du navigateur. Moi j'avais pris ça pour des pixels, alors que c'est un repère ou une échelle qu'on choisit à sa guise. Paul ou Archimède me corrigeront si cette explication n'est pas exacte.

    J'aurais bien voulu être le premier à contribuer aux sources Flash-Pascal, mais le robot ouvrirait une nouvelle discussion.
    Fichiers attachés Fichiers attachés
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [LV 8.6] Créer une horloge numérique
    Par ptit_knard dans le forum LabVIEW
    Réponses: 5
    Dernier message: 08/07/2010, 00h52
  2. [68HC11] Réalisation d'une horloge numérique
    Par david2312 dans le forum Autres architectures
    Réponses: 2
    Dernier message: 04/04/2007, 15h40
  3. Comment réaliser une horloge numérique grâce au timer 8254 ?
    Par jojo_ol76 dans le forum Autres architectures
    Réponses: 1
    Dernier message: 29/03/2007, 19h56
  4. retait d'une valeur numérique au mieu d'un texte
    Par RémiDavid dans le forum Langage SQL
    Réponses: 3
    Dernier message: 28/04/2004, 16h20
  5. Calculer la période d'une horloge
    Par barthelv dans le forum Algorithmes et structures de données
    Réponses: 12
    Dernier message: 08/03/2004, 16h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo