RetourForum Delphi
Nouveau compte - Se connecter - Perdu votre mot de passe?Recherche: Utilisateur - Message

Index > Forum général > Tmemo traitement trop lentNouveau post - Répondre
Ghanem
visiteur
Content Tmemo traitement trop lent message: éditerle 18/05/16 à 21h44


Salut

Avec ce modeste code le traitement est trop lent  pour copier le contenu d'1 Tstringlist  vers 1 Tmémo  (6000 lignes)

procedure TForm1.Test02Click(Sender: TObject);
var
MonTexte : string;
MaListe : TStringlist;
j : integer;
begin
    Memo1.Clear;
    MonTexte := 'Poésie.txt';
    MaListe := TStringlist.Create;
    MaListe.LoadFromFile( MonTexte);
      for j := 0 to MaListe.Count-1 do
      begin
      Memo1.Text := Memo1.Text + ' ' + MaListe[j] ; //(pour écrire en continue)
  end;
  MaListe.Free;
end;


Merci a tous

tourlourou
modérateur
2937 messages
Message Re: Tmemo traitement trop lent message: éditerle 19/05/16 à 09h21

et avec Memo1.Lines.Add(MaListe[j]) ?
sinon, faire un Memo1.BeginUpdate / EndUpdate entre lesquels tu ajouteras plusieurs lignes sans qu'il ne rafraichisse l'affichage pour gagner un peu de temps

<<débutant, et pour longtemps...>>

Ghanem
visiteur
Triste Re: Tmemo traitement trop lent message: éditerle 19/05/16 à 12h43



Merci a toi tourlourou

je vais essayer d'autres méthodes et voir qu'est-ce que ça donne

Merci encore

JROD
membre
3905 messages
Message Re: Tmemo traitement trop lent message: éditerle 15/01/17 à 14h12

Bonjour, ceci devrait soulager
 

code


s:string;
begin
    s:='';
    Memo1.Clear;
    MonTexte := 'Poésie.txt';
    MaListe := TStringlist.Create;
    MaListe.LoadFromFile( MonTexte);
      for j := 0 to MaListe.Count-1 do
      begin
      s:= s + ' ' + MaListe[j] ; //(pour écrire en continue)
  end;
  Memo1.Text :=s
  MaListe.Free;
end;

Jérôme

JROD
membre
3905 messages
Message Re: Tmemo traitement trop lent message: éditerle 15/01/17 à 14h15

plutôt come ça (j'ai modifié la fin du code):
 

code


s:string;
begin
    s:='';
    Memo1.Clear;
    MonTexte := 'Poésie.txt';
    MaListe := TStringlist.Create;
    MaListe.LoadFromFile( MonTexte);
      for j := 0 to MaListe.Count-1 do
      begin
      s:= s + ' ' + MaListe[j] ; //(pour écrire en continue)
  end;
  Memo1.Text :=Memo1.Text+s;
  MaListe.Free;
end;

Jérôme

Index > Forum général > Tmemo traitement trop lentNouveau post - Répondre
 page 1 sur 1