スクロール中に最後の行に表示させるには?


cat  2007-04-12 13:49:41  No: 25746  IP: 192.*.*.*

RichEditに受信したデータを表示させていくプログラムを作成しています。

pRichEdit->SelText = cc;

とだけしているのですが、スクロールバーで画面を移動させていると止まってしまいます。
どうすれば止まらずに、表示も更新できてスクロールも使えるようになるかご存知の方いらしたら教えてください。

編集 削除
ddd  2007-04-13 10:27:27  No: 25747  IP: 192.*.*.*

もうちょっと具体的にお願いできる?

編集 削除
cat  2007-04-18 11:51:09  No: 25748  IP: 192.*.*.*

RichEditでDragMode=dmAutomatic,Enabled=true、ScrollBars=ssBothに
設定した状態で、タスクでpRichEdit->SelText = cc;
とデータを表示させています。
スクロールバーを触らずにそのままの状態なら止まらずに
データが表示され画面もスクロールしていくのですが、
スクロールバーを触ったりしていると止まってしまいます。
うまく説明できませんが、わかってもらえたでしょうか?
スクロールバーを触っても止まらないようにはできるでしょうか?

編集 削除
Fusa  2007-04-18 14:13:17  No: 25749  IP: 192.*.*.*

受信データをRichEditに書き込む部分を
別スレッドにして、
動作させると、スクロールバーをさわっていても
情報更新が止まることはないです。

編集 削除
cat  2007-04-18 16:16:37  No: 25750  IP: 192.*.*.*

ScrollBars=ssBothと設定するのではなく、ScrollBarコンポーネントでするということでしょうか?

編集 削除
ちゃうちゃう犬  2007-04-18 20:53:25  No: 25751  IP: 192.*.*.*

C++Builderでなく Delphiさんぷる

type
  TMyThread = class(TThread)
  private
   procedure Execute; override;
   procedure AddTextLine;
  end;

procedure TMyThread.Execute;
begin
  while not Terminated do begin
   Synchronize(AddTextLine);
   Sleep(500);
  end;
end;

procedure TMyThread.AddTextLine;
begin
  Form1.RichEdit1.SelText := StringOfChar(Chr(Random(26)+$41), Random(20)+8)+#13#10;
end;

var
  ThreadActive: Boolean;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if ThreadActive then exit;
  with TMyThread.Create(True) do begin
   FreeOnTerminate := True;
   Resume;
  end;
  ThreadActive := True;
end;

編集 削除