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 :

Comment afficher le contenu d'un ComTerminal du TComPort dans un Memo?


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 63
    Par défaut Comment afficher le contenu d'un ComTerminal du TComPort dans un Memo?
    Bonjour;
    mon projet consiste à envoyer des données via le port com puis recevoir d'autres données qui seront affichées sur le ComTerminal, mon problème donc est comment afficher ces données à partir du ComTerminal dans un Memo ou fichier Text?
    j'ai essai le code que j'ai trouvé sur le site :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    void __fastcall TForm1::ComPort1RxChar(TObject *Sender, int Count)
    {
        AnsiString Phrase2;
        ComPort1->ReadStr(Phrase2, Count);
        Memo1->Lines->Add(Phrase2);
    }
    mais toujours rien n'est affiché sur le mémo malgré que dans le ComTerminal y a mes données.
    j'ai besion de votre aide.
    merci d'avance.

  2. #2
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 3
    Par défaut where are you?
    j'ai le meme probleme moi aussi
    alors est ce qu'il y a quelqu'un qui peut nous aider

  3. #3
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut lili81
    Peut etre une piste en lisant ce lien sur le Forum

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    Peut-être se contenter de remplacer les NUL par un espace en faisant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    int j = 0;
    while( j < (Count-1) )
        {
        if(Buffer[j] == 0) Buffer[j] = ' ';
        j++;
        }
    Memo1->Lines->Add(Buffer);
    (Count - 1) représente la limite pour (j) afin de préserver le dernier NUL.

    Il y a d'autres moyens au cas où il faudrait considérer chaque portion délimitée par un NUL comme une ligne à part entière.

    Comme par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    int Count = 20;
    char Buffer[1024] = {'A', 'B', 'C', 'D', 0,
                         '1', '2', '3', '4', 0,
                         'E', 'F', 'G', 'H', 0,
                         '5', '6', '7', '8', 0};

    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
     
    char *T = Buffer;
    int j = 0;
    while( j < Count )
        {
        if(Buffer[j] != 0)
            {
            j++;
            }
        else
            {
            Memo1->Lines->Add(T);
            j++;
            T = &Buffer[j];
            }
        }
    A plus !

Discussions similaires

  1. Comment afficher le contenu d'un fichier ini dans un mémo?
    Par Jayceblaster dans le forum Langage
    Réponses: 7
    Dernier message: 13/05/2014, 17h38
  2. Réponses: 4
    Dernier message: 30/09/2008, 09h30
  3. Réponses: 4
    Dernier message: 19/10/2006, 16h24
  4. Comment afficher le contenu d'une cassette DAT?
    Par prefna dans le forum Périphériques
    Réponses: 1
    Dernier message: 24/07/2006, 13h46
  5. Réponses: 23
    Dernier message: 07/02/2006, 17h55

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