RichEdit

clem68100 15 Messages postés vendredi 11 septembre 2015Date d'inscription 14 décembre 2016 Dernière intervention - 24 mai 2016 à 22:58 - Dernière réponse : dubois77 689 Messages postés jeudi 17 avril 2008Date d'inscription 9 mars 2018 Dernière intervention
- 26 mai 2016 à 15:52
Bonsoir,

Jutilise un RichEdit1 pour afficher des donnée en voici le code :

for n := 1 to StrToInt(seriale1.SiC_PunchingCounter) do
if (seriale1.SiC_PunchingCounter <> '0') then
RichEdit1.Lines.Append(+seriale1.SiC_PunchingCodeNumbers[n]); //Punching time

Je m'explique Seriale1 est un composant pour me connecter à un boitier electronique qui receptionne
des donné provennant d'une puce éléctronique.

Quand j'insert ma puce dans ce boitier cela me fais plusieurs ligne or je souhaiterais que
ca face une seule ligne.

Quelqu'un pourrais m'aider?
Afficher la suite 

Votre réponse

8 réponses

papyvore 155 Messages postés samedi 15 novembre 2003Date d'inscription 5 avril 2018 Dernière intervention - 25 mai 2016 à 11:33
0
Utile
salut
quelle ligne veut tu afficher ?? la première la dernière une autre ??

quand tu fait
for n := 1 to StrToInt(seriale1.SiC_PunchingCounter) do 
if (seriale1.SiC_PunchingCounter <> '0') then

c'est normal que tu affiche autant de lignes qui correspondent a
seriale1.SiC_PunchingCounter <> '0'

--

papyvore
Commenter la réponse de papyvore
korgis 415 Messages postés samedi 17 mai 2003Date d'inscription 11 mai 2018 Dernière intervention - 25 mai 2016 à 12:56
0
Utile
Salut,

pourquoi un RichEdit ?

Si j'ai bien compris ce que tu veux obtenir, tu peux concaténer le chaque résultat de la boucle dans une chaîne (string), et, après l'exécution de la boucle, afficher ce résultat dans le RichEdit, comme ça :

var
  n: Integer;
  s: string;
begin
  s := '';
  for n := 1 to StrToInt(seriale1.SiC_PunchingCounter) do
  if (seriale1.SiC_PunchingCounter <> '0') then
    //RichEdit1.Lines.Append('' + seriale1.SiC_PunchingCodeNumbers[n]);
    s := s + seriale1.SiC_PunchingCodeNumbers[n];
  RichEdit1.Lines.Text := s;
end;
Commenter la réponse de korgis
Cirec 4221 Messages postés vendredi 23 juillet 2004Date d'inscriptionModérateurStatut 11 mai 2018 Dernière intervention - 25 mai 2016 à 19:24
0
Utile
Salut,

je vois plutôt quelque chose comme:
var
n: Integer;
s: string;
begin
s := '';
if (seriale1.SiC_PunchingCounter <> '0') then
for n := 1 to StrToInt(seriale1.SiC_PunchingCounter) do
s := s + seriale1.SiC_PunchingCodeNumbers[n];
RichEdit1.Lines.Text := s;
end;

ça évite des testes inutiles ;)
korgis 415 Messages postés samedi 17 mai 2003Date d'inscription 11 mai 2018 Dernière intervention - 25 mai 2016 à 19:44
Bien vu (encore une fois) Cirec !
Je m'étais focalisé sur la question posée, sans avoir remarqué le manque de logique du code...
Cirec 4221 Messages postés vendredi 23 juillet 2004Date d'inscriptionModérateurStatut 11 mai 2018 Dernière intervention > korgis 415 Messages postés samedi 17 mai 2003Date d'inscription 11 mai 2018 Dernière intervention - 25 mai 2016 à 20:27
^^
ça m'arrive aussi va ... faut pas croire ;)
Commenter la réponse de Cirec
clem68100 15 Messages postés vendredi 11 septembre 2015Date d'inscription 14 décembre 2016 Dernière intervention - 25 mai 2016 à 19:55
0
Utile
Merci

voici le code adapté à mon besoin

if (seriale1.SiC_PunchingCounter <> '0') then begin

RichEdit1.SelAttributes.Color := clNavy;
RichEdit1.Lines.Add(seriale1.SiC_FirstName+ ' '+ seriale1.SiC_SurName+' '+seriale1.SiC_No+' arrivé à : '+seriale1.SiC_FinishTime);
RichEdit1.Lines.Add('Heure de lecture : '+TimeToStr(Now));
RichEdit1.Lines.Add('Nombre de poste : ' + seriale1.SiC_PunchingCounter);
for n := 1 to StrToInt(seriale1.SiC_PunchingCounter) do
s := s +' '+ seriale1.SiC_PunchingCodeNumbers[n];
RichEdit1.Lines.Add( s);
end;
dubois77 689 Messages postés jeudi 17 avril 2008Date d'inscription 9 mars 2018 Dernière intervention - 26 mai 2016 à 15:52
La variable s est initialisée comment et quand ?
( s := s + xxxx )
Commenter la réponse de clem68100
Cirec 4221 Messages postés vendredi 23 juillet 2004Date d'inscriptionModérateurStatut 11 mai 2018 Dernière intervention - 25 mai 2016 à 20:25
0
Utile
Merci

voici le code adapté à mon besoin
...

ben on est loin de la question de départ
et on avait pas autant de précisions pour en arriver là !!!

faut presque être voyant ^^
Commenter la réponse de Cirec

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.