簡體   English   中英

Delphi中TRichEdit的滾動問題

[英]Scrolling issues with TRichEdit in Delphi

我正在向TRichEdit添加行,如何保持對剛剛添加的行的關注?

For Idx := 1 to 1000 do
   RichEdit.Lines.add(IntToStr(Idx));

編輯

我只是在Richedit的最底行顯示剛剛添加的內容,而所有其他行向上滾動

如果您只想滾動到richedit的末尾,這應該可以工作:

For Idx := 1 to 1000 do
begin
  RichEdit.Lines.add(IntToStr(Idx));
  RichEdit.SelStart := RichEdit.GetTextLen;
  SendMessage(RichEdit.handle, EM_SCROLLCARET,0,0);
end;

如果這不是您想要的,請查看上面的評論並澄清您的問題。

你可以試試這個

選項1)在循環結束時設置光標

For Idx := 1 to 1000 do
   RichEdit.Lines.add(IntToStr(Idx));

RichEdit.SetFocus;
RichEdit.SelStart := RichEdit.Perform(EM_LINEINDEX, RichEdit.Lines.Count-1, 0) ;

選項2)在執行循環時設置光標

For Idx := 1 to 1000 do
Begin
RichEdit.Lines.add(IntToStr(Idx));
RichEdit.SetFocus;
End;

RichEdit.SelStart := RichEdit.Perform(EM_LINEINDEX, RichEdit.Lines.Count-1, 0) ;

再見

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM