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

C++Builder Discussion :

TMemo C++Builder version2007


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de 3logy
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Allemagne

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

    Informations forums :
    Inscription : Août 2007
    Messages : 280
    Par défaut TMemo C++Builder version2007
    Salut j'ai un tout petit probleme:

    Comment faire dans C++builder2007 pour que apres chaque ligne recue, l'on va automatiquement a la ligne dans TMemo?

    Exemple :
    Valeur actuelle de la donnee
    Valeur actuelle de la donnee
    Valeur actuelle de la donnee
    et non :

    Valeur actuelle de la donnee Valeur actuelle de la donnee
    Merci

  2. #2
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut
    Salut,
    Quand tu écrit dans ton TMemo, utilise la commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Memo1->Lines->Add("Valeur actuelle de la donnee");
    Memo1->Lines->Add("Valeur actuelle de la donnee");
    et tu auras:
    Valeur actuelle de la donnee
    Valeur actuelle de la donnee

  3. #3
    Membre éclairé Avatar de 3logy
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Allemagne

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

    Informations forums :
    Inscription : Août 2007
    Messages : 280
    Par défaut
    Dans Mon TMemo je recois des lignes d'un appareil et il est desactive en mode ecriture ceci dit je voudrais que ce soit automatique chaque fois qu'il recoit des donnees....

    voici le code de mon TMemo:


    void TConnectionSR232App::ReturnMethod(AnsiString NewData)
    {
    Receive_Memo->Text=Receive_Memo->Text+NewData;
    }

  4. #4
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut
    Il faut que tu code comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Receive_Memo->Lines->Add(NewData);
    et à chaques fois que tu exécutes cette ligne, tu écriras une nouvelle ligne dans le TMemo.

    Pour avoir accès à une ligne particulière du TMemo, il faut que tu utilises la propriété:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ANsiString LigneI = Receive_Memo->Lines->Strings[i];
    où i est l'index de la ligne (la première est à l'indice 0).

    Je pense que ca répond à ton autre post par la même occasion.

  5. #5
    Membre éclairé Avatar de 3logy
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Allemagne

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

    Informations forums :
    Inscription : Août 2007
    Messages : 280
    Par défaut
    Ouuppps ca me donne ceci:

    277.0 nm
    -0.00
    0 ABS K
    1: 1.00
    00<13><1
    0>
    Au lieu de
    277.0 nm -0.000 ABS K1: 1.0000<13><10>

  6. #6
    Membre émérite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    Février 2006
    Messages
    916
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 916
    Par défaut
    Ok, c'est une mécompréhension de ma part, je pensais que tu recevais la ligne complète à chaque fois.
    Apparemment tu recois tes informations morceaux par morceaux. Il te faut donc stocker les infos dans un AnsiString temporaire et ne l'afficher que lorsque la ligne est complète.

    Le format de la trame est-il toujours identique?
    As-tu moyen de détecter que la ligne est finie?

    d'un point de vu "algorithmique" ca donne ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    void ReceptionTrame(AnsiString NewData)
    {
        static AnsiString tmp;
        tmp += NewData;
        if(ligne complète)
        {
            Memo->Lines->Add(tmp);
            tmp = "";
        }
    }

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

Discussions similaires

  1. c++ builder TMemo
    Par ola-oz dans le forum C++Builder
    Réponses: 3
    Dernier message: 21/02/2010, 13h02
  2. TMemo C++ Builder 6
    Par Johanboy dans le forum C++Builder
    Réponses: 7
    Dernier message: 23/02/2007, 08h45
  3. le composant TMemo de builder avec une Form
    Par boopix dans le forum C++Builder
    Réponses: 7
    Dernier message: 15/09/2006, 16h00
  4. Outils, cours et NOUVEAUX tutoriels pour Borland C++Builder
    Par hiko-seijuro dans le forum C++Builder
    Réponses: 10
    Dernier message: 12/03/2006, 22h33
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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