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

Langage Delphi Discussion :

Utilisation memo dans unité


Sujet :

Langage Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 182
    Points : 66
    Points
    66
    Par défaut Utilisation memo dans unité
    Je suis dans une unité.
    Dans celle-ci j'ai une procédure dans laquelle je veux utiliser un tmemo mais je n'y arrive pas.
    Le but en d'envoyé par mail le contenu de mon mémo. Les retours à la ligne sont importants pour moi (le fait d'avoir Nom sur la première ligne et Prénom sur la seconde).
    J'ai le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var Memo:tMemo;
    begin
    Memo:=tMemo.create(nil);
    Memo.Lines[0]:='Nom';
    Memo.Lines[1]:='Prénom';
    ....
    end;
    J'ai le message d'erreur
    "Le contrôle '' n'a pas de fenêtre parente".
    Je n'ai de message d'erreur quand je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Memo.text:='Nom'+chr(13)+'Prénom';
    mais lorsque je consulte le mail envoyé j'ai
    NomPrénom (sans retour à la ligne).
    Merci de votre aide.

  2. #2
    Membre averti Avatar de shell13010
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2008
    Messages : 281
    Points : 314
    Points
    314
    Par défaut
    deja Salut

    le mieux est d'utiliser

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Memo1.text:='Nom'+#13#10+'Prénom';

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 182
    Points : 66
    Points
    66
    Par défaut
    Merci beaucoup.
    Super

  4. #4
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 764
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 764
    Points : 13 386
    Points
    13 386
    Par défaut
    Memo.Lines[0] n'existe pas encore à ce moment là. Pour ajouter une ligne, Add.

    Et si tu ne veux pas afficher tes données, utilise plutôt une StringList (La propriété Lines du memo est de type TStringList):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var List :TStringList;
    begin
    List := TStringList.create;
    List.Add('Nom');
    List.Add('Prénom');
    ....
    end;
    Et ne pas oublier List.Free;

  5. #5
    Membre averti Avatar de shell13010
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2008
    Messages : 281
    Points : 314
    Points
    314
    Par défaut
    Salut,

    @Andnotor: pourquoi utiliser StringList alors que je penser que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Memo1.Lines.add('Nom'+#13#10+'Prénom');
    revener au meme es que je me trompe?

  6. #6
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 764
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 764
    Points : 13 386
    Points
    13 386
    Par défaut
    Le memo est orienté GUI et est par conséquent plus lourd. (Demande plus de ressource, est plus long à créer, etc.)
    Tu aurais tout aussi bien pu passer par un ListeBox, un ComboBox ou ce que tu veux qui gère une propriété dérivée de... TStrings.

    Il s'agit simplement de trouver le bonne outil pour la bonne opération. Et en programmation, Le plus léger est toujours le meilleur .

    Maintenant, je n'ai pas dis que ça ne marchait pas avec un TMemo...

  7. #7
    Membre averti Avatar de shell13010
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2008
    Messages : 281
    Points : 314
    Points
    314
    Par défaut
    non je ne t'es pas contredit loin de la

    c'etais juste pour m'instruire et comprendre...

    merci pour ton explication car j'utiliser cette maniere jusqu'a aujourdhui,donc je vais faire quelque retouche a mon projet

  8. #8
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 764
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 764
    Points : 13 386
    Points
    13 386
    Par défaut
    Je serais un très mauvais prof, je le sais .
    Mais lorsque les gens sont réceptifs, ça ne me dérange jamais de rentrer dans les détails.

    (Mais ne me pose pas 10x la même question )

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

Discussions similaires

  1. [CR 2008] utilisation de champ memo dans expert selection
    Par kikidrome dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 08/01/2008, 14h07
  2. [CR] Peut-on utiliser CR dans un programme en C
    Par mboucetta dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 11/10/2004, 10h56
  3. Remplir et relire un champ Memo dans une BD Access.
    Par Maitre Kanter dans le forum Bases de données
    Réponses: 3
    Dernier message: 13/07/2004, 22h51
  4. Réponses: 1
    Dernier message: 28/04/2004, 19h18
  5. [CR][VB6] comment utiliser CR dans VB ?
    Par kouassi_denis dans le forum SDK
    Réponses: 2
    Dernier message: 26/01/2004, 16h20

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