[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 318
  • Last Modified:

Richedit

Procedure BufferRichedit;
Begin
If Form1.RichEdit1.Lines.Count>=MaxLines Then
 begin
   While Form1.RichEdit1.Lines.Count>=MaxLines do
     Form1.RichEdit1.Lines.Delete(0);
  end;
End;

Where MaxLines>300 so as the chat fills up, to stop it from going on forever and ever, it deletes the top lines and then goes back to the bottom, it works - okish..

Problem is everytime it happens it flickers as it moves everything down, is there any other way of doing this? or even buffer it or something, place something on top of it so people do not see it refresh? any suggestions?

- Thanks

Craig C.
0
craig_capel
Asked:
craig_capel
1 Solution
 
Lee_NoverCommented:
set it's DoubleBuffered property to true
and btw you can ommit the "if part" :)
simply use :
While Form1.RichEdit1.Lines.Count>=MaxLines do
    Form1.RichEdit1.Lines.Delete(0);
0
 
MBoCommented:
Richedit1.Lines.BeginUpdate;
... your actions here
Richedit1.Lines.EndUpdate;

0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now