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 :

Jeu des points à relier [Sources]


Sujet :

Flash Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Robot Forum
    Avatar de forum
    Inscrit en
    Novembre 1999
    Messages
    2 967
    Détails du profil
    Informations forums :
    Inscription : Novembre 1999
    Messages : 2 967
    Par défaut Jeu des points à relier
    Bonjour,

    Je vous propose un nouvel élément à télécharger : Jeu des points à relier.

    Thèmes abordés :
    • Chargement d'un fichier xml
    • Ajout et suppression dynamique d'événements souris
    • Dessin

    cf version Flash.

    Qu'en pensez-vous ?

  2. #2
    Rédacteur/Modérateur

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

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 167
    Billets dans le blog
    9
    Par défaut
    Excellent exemple, très pédagogique. On peut imaginer une multitude de variations sur la base de ce code.

    Je trouve particulièrement intéressante l'utilisation du fichier XML. J'ai découvert à cette occasion ce format que je ne connaissais que de nom : ça m'a tout de suite plu. Merci aux auteurs !

    A propos de fichiers, qu'en est-il des fichiers .txt ? Actuellement a-t-on la possibilité de les utiliser ?

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

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    Flash n'est pas prévu pour...mais il plus ou moins possible de le faire

    le programme ci-dessous affiche son propre source dans un TextField.
    cependant, les accents sont interprétés comme de l'UTF8 et les #13#10 provoquent deux passages à la ligne.

    Maintenant, si le fichier texte est en UTF8 avec des retours à la ligne Unix ça fonctionnera.

    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
     
    program LoadText;
     
    uses
      Flash8;
     
    var
      t: TextField;
     
    type
      TLoadVars = class(LoadVars)
        constructor Create;
        procedure onData(src: string);
      end;
     
    constructor TLoadVars.Create;
    begin
      inherited Create();
    // lire son propre source
      if not load('loadText.fpr') then
        t.Text := "erreur générale"
      else
        t.Text := '';
    end;
     
    procedure TLoadVars.onData(src: string);
    begin
      t.Text := t.Text + src;
    end;
     
    begin
      t := TextField.Create(_root, '', 1, 0, 0, Stage.Width, Stage.Height);
      t.SetNewTextFormat(TextFormat.Create('Courier New', 12));
      TLoadVars.Create;
    end.
    Note que LoadVars est normalement utilisé pour lire des données formatées comme une URL "var1=data1&var2=data2", j'utilise "onData" qui permet d'avoir les données lues avant traitement.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  4. #4
    Rédacteur/Modérateur

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

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 167
    Billets dans le blog
    9
    Par défaut
    Merci pour le code et les explications.

  5. #5
    Rédacteur/Modérateur

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

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 167
    Billets dans le blog
    9
    Par défaut
    En jouant avec ton code, je suis retombé sur une difficulté que j'avais déjà rencontrée. Mettons que je veuille supprimer tous les 'a' du texte qui va s'afficher. La ligne que j'ai mise en commentaire me fait obtenir un message d'erreur. Est-ce que c'est un bug ou est-ce que c'est mon code qui n'est pas bon ?

    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
    procedure TLoadVars.onData(src: string);
    var
      i: integer;
      temp: string;
    begin
      t.Text := t.Text + src;
     
      temp := '';
     
      for i:=1 to length(t.Text) do
      begin
        //if t.Text[i] = 'a' then t.Text[i] := '';// "array expected"
        if not t.Text[i] = 'a' then temp := temp + t.Text[i];
      end;
     
      t.Text := temp;
    end;

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

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    les deux mon capitaine

    alors t.Text[i] := ... n'est pas acceptable, tu peux modifier la propriété "Text" mais pas un caractère de celle-ci. ça reviendrait à lire, modifier puis réécrire la propriété Text: string en une seule opération...remarque pourquoi pas...mais non

    Sous Delphi tu ne peux pas non plus écrire Edit1.Text[1] := 'z'...mais tu peux faire un if Edit1.Text[1] = 'z' tu extrais un caractère de la chaîne lue...ça marche.

    d'autre part, tu peux ne pas affecter une chaîne vide à un caractère pour le supprimer. la syntaxe Pascal serait Delete(s, i, 1)...mais elle n'est pas supportée par FlashPascal pour l'instant.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

Discussions similaires

  1. Jeu des points à relier
    Par freegreg dans le forum Téléchargez
    Réponses: 0
    Dernier message: 03/10/2011, 08h39
  2. Impossible de relier des points avec plot
    Par Sylver52 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 28/05/2009, 08h21
  3. Relier des points
    Par florianlang dans le forum Débuter
    Réponses: 6
    Dernier message: 11/06/2008, 20h21
  4. Relier des points dans une paintbox par une courbe
    Par Benjikos dans le forum Débuter
    Réponses: 4
    Dernier message: 19/08/2007, 13h06
  5. pb relier des points avec la SDL en C
    Par rafale001 dans le forum SDL
    Réponses: 1
    Dernier message: 25/02/2007, 15h42

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