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

Composants VCL Delphi Discussion :

Boucle sur les Edit(s)


Sujet :

Composants VCL Delphi

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 44
    Points : 25
    Points
    25
    Par défaut Boucle sur les Edit(s)
    J'ai un petit souci, sous Delphi j'ai un grand nombre d'Edit qe je souhaite enregistrer dans un fichier. Comment créer une boucle qui m'enregistre tous les text(s) à tour de role.

    Exemple :
    Quand je met : writeln(fichier,Edit[i].text) // il en veux pas.
    Comment faire ?

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Points : 17 916
    Points
    17 916
    Billets dans le blog
    2
    Par défaut
    faudrait déjà savoir lire

    le forum Delphi c'est ici : http://www.developpez.net/forums/forumdisplay.php?f=15
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  3. #3
    Rédacteur
    Avatar de evarisnea
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juin 2005
    Messages
    1 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 957
    Points : 4 384
    Points
    4 384
    Par défaut

    un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    for i := 0 to ComponentCount - 1 do
      if Components[i] is TEdit then
        writeln(fichier,TEdit(Components[i]).text);
    le code est censé parcourir tous les composants "possédés" par la fiche, vérifier pour chaque composant si celui ci est un TEdit, et enregistrer alors sa propriété Text à l'aide d'un cast.

    utilise l'aide de delphi pour la propriété Components.

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Je te propose le code suivant (à l'intérieur d'un évènement de ta form par exemple) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var
      Cpt: Integer;
    begin
      for Cpt := 0 to ComponentCount - 1 do
        if ( Components[Cpt] is TEdit ) then
          // enregistrer le TEdit en castant TEdit( Components[Cpt] ) pour avoir accès à la propriété Text
    end;
    Edit : Grillé
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 44
    Points : 25
    Points
    25
    Par défaut
    Comment on fait pour récupérer dans le même ordre ?

  6. #6
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Il n'y a rien de prêt à l'emploi pour ça, si tu veux les récupérer dans l'ordre tu dois faire un tri dans un tableau temporaire en te basant sur le Name, le TabOrder ou encore le Tag, etc... un champ qui permette l'ordonnancement.
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  7. #7
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    Citation Envoyé par Aka Guymelef Voir le message
    Il n'y a rien de prêt à l'emploi pour ça, si tu veux les récupérer dans l'ordre tu dois faire un tri dans un tableau temporaire en te basant sur le Name, le TabOrder ou encore le Tag, etc... un champ qui permette l'ordonnancement.
    c'est pas nécessaire, il peut toujours organiser dans ça fiche l'ordre de création des objet et ça sera l'ordre de parcours en gardant les même boucles.

  8. #8
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Moui c'est vrai néanmoins je trouve ça difficilement évolutif, si jamais il a besoin de rajouter un TEdit en plein milieu, il faut se re-palucher tout, pas terrible

    Mais bon le soucis d'évolution n'est peut-être pas un impératif aussi. A voir...
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  9. #9
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2002
    Messages : 245
    Points : 154
    Points
    154
    Par défaut
    Citation Envoyé par aydin24alain Voir le message
    Comment on fait pour récupérer dans le même ordre ?
    Il faut d'abor definir c'est quoi ton critere de tri? L'ordre de creation? De gauche a droite? du haut vers le bas? Le nom? le contenu?

    Dans tous les cas, tu peux mettre ca dans une liste temporaire et appliquer ton tri.

  10. #10
    Membre chevronné

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 289
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2002
    Messages : 1 289
    Points : 1 940
    Points
    1 940
    Par défaut
    Autrement il faut regarder du côté de FindComponents (Recherche un composant par son nom), s'ils sont nommés Edit1, Edit2 etc.
    Delphi 7/XE2/XE3
    C#
    Oracle 9i à 12c
    SQL Server 2008 à 2022

  11. #11
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Linkin Voir le message
    Autrement il faut regarder du côté de FindComponents (Recherche un composant par son nom), s'ils sont nommés Edit1, Edit2 etc.
    C'est également une solution envisageable si les composants sont nommés incrémentalement
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  12. #12
    Membre chevronné

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 289
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2002
    Messages : 1 289
    Points : 1 940
    Points
    1 940
    Par défaut
    Je suis d'accord que sémantiquement, ça n'a pas de sens de les nommer de cette façon .
    Delphi 7/XE2/XE3
    C#
    Oracle 9i à 12c
    SQL Server 2008 à 2022

  13. #13
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 44
    Points : 25
    Points
    25
    Par défaut
    Merci à tous.

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

Discussions similaires

  1. boucle sur les répertoires
    Par salseropom dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 15/06/2007, 01h59
  2. boucle sur les champs dynamiques
    Par Anduriel dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/06/2006, 19h49
  3. [C#] Boucle sur les controles
    Par stailer dans le forum Windows Forms
    Réponses: 3
    Dernier message: 10/05/2006, 08h48
  4. Macro sur Excel/Boucle sur les lettres
    Par life is magic dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 25/11/2005, 11h56
  5. Bip non sollicité sur les Edit
    Par David dans le forum Composants VCL
    Réponses: 2
    Dernier message: 09/09/2003, 20h32

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