Ajout dune scrollbar dans un TMemo [Résolu]

Signaler
Messages postés
6
Date d'inscription
mardi 9 octobre 2007
Statut
Membre
Dernière intervention
11 novembre 2007
-
Messages postés
6
Date d'inscription
mardi 9 octobre 2007
Statut
Membre
Dernière intervention
11 novembre 2007
-
Bonsoir  bonsoir,

Je viens par ce message, vous demander, comment ajouter une Scrollbar(verticale) dans un TMemo.
Ell est déjà dessus, mais ne réagit pas aux lignes, qui peuvent se placer dans ce TMemo.

Comment parametrer tout ceci svp?

Merci par avance.

10 réponses

Messages postés
185
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
21 mars 2011

Bonjour,

Mettre la propriété ScrollBars du TMemo à ssVertical ne te suffit pas ?

Pourquoi veux-tu parametrer cela toi-même ?

<hr />Le plus dur dans un programme c'est de savoir pourquoi il marche !
Messages postés
185
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
21 mars 2011

Qu'est-ce que tu entends par trop de ligne ?
<hr />Le plus dur dans un programme c'est de savoir pourquoi il marche !
Messages postés
185
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
21 mars 2011

Désolé, mais je ne vois absolument pas pourquoi la ScrollBar du TMemo ne te va pas.
Pourrais-tu donner un bout de ton code pour comprendre un peu plus.

<hr />Le plus dur dans un programme c'est de savoir pourquoi il marche !
Messages postés
185
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
21 mars 2011

Je crois avoir compris !
Je pense qu'il y a une erreur dans le code.. !
au lieu de mettre Memo1.Text := Info.FindData.cFileName;
mets : Memo1.Lines.Add(Info.FindData.cFileName);

Et tu peux aussi remplacer Info.FindData.cFileName par Info.Name;

ce qui donne :

procedure TForm1.listerClick(Sender: TObject);
var
  Chemin : String;
  Info : TSearchRec;
begin


  Chemin := IncludeTrailingPathDelimiter(Memo1.Text);


  if FindFirst(Chemin + '*.*', faAnyFile, Info) = 0 Then
  begin
    repeat
      if Not((Info.Attr And faDirectory) = 0) then
        Memo1.Lines.Add(Info.FindData.cFileName)
      else
        Memo2.Lines.Add(Info.FindData.cFileName);


    until FindNext(Info) <> 0;
    FindClose(Info);
  end;
end;

Voila, en espérant avoir enfin répondu correctement à ta question.
Bon courage !
Messages postés
185
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
21 mars 2011

Là tu n'as plus besoins du TScrollBox, et tu as juste à mettre la propriété ScrollBars du TMemo à ssVertical. Normallement ça devrait être bon.
Messages postés
6
Date d'inscription
mardi 9 octobre 2007
Statut
Membre
Dernière intervention
11 novembre 2007

Bonjour,

Merci de m'avoir répondu.
Non, cela ne suffit pas, car la scrollbar, ne réagit pas lorsqu'il y a trop de lignes dans ce TMemo.
Ce que je voudrais, c'est de pouvoir faire remoter le texte, quand celui ci contient trop de lignes.
Tu vois?
Messages postés
6
Date d'inscription
mardi 9 octobre 2007
Statut
Membre
Dernière intervention
11 novembre 2007

Bien, il y a trop de lignes qui se mettent dans ce TMemo, alors, une fois que j'ai fini les action menées, les lignes du haut, deviennent invisibles.
Enfin, elle passe "au-dessus" , et je ne vois que les dernières.
Et c'est pour çan que je souhaiterais mettre un scrollbar pour pouvoir me déplacer dans ce TMemo pour y voir toutes les lignes.
Messages postés
6
Date d'inscription
mardi 9 octobre 2007
Statut
Membre
Dernière intervention
11 novembre 2007

Oui, voci le code:

procedure TForm1.listerClick(Sender: TObject);


Var Chemin : String;
    Info   : TSearchRec;
begin


   Chemin := IncludeTrailingPathDelimiter(Memo1.text);


   If FindFirst(Chemin+'*.*',faAnyFile,Info)=0 Then
  Begin
    Repeat
            If Not((Info.Attr And faDirectory)=0)
        Then Memo1.text:=(Info.FindData.cFileName)
        Else Memo2.text:=(Info.FindData.cFileName)


          Until FindNext(Info)<>0;
    FindClose(Info);
  End;


end;
Messages postés
6
Date d'inscription
mardi 9 octobre 2007
Statut
Membre
Dernière intervention
11 novembre 2007

Salut,

Effectivement, celma fonctionne plus, mais quand je déplace "l'ascenseur", il ne se passe rien.. Il bouge, ok, mais ne fait pas défiler le contenu du TMEmo..
Messages postés
6
Date d'inscription
mardi 9 octobre 2007
Statut
Membre
Dernière intervention
11 novembre 2007

Ok, merci cela fonctionne!

Merci pour te réponses aussi claires que constructives!

A bientôt!