用Tmemo,如果里面字太多,需要分页显示生成图片遇到的问题,改用RichEdit遇到的问题(50)

  • 主题发起人 zyt_1978
  • 开始时间
Z

zyt_1978

Unregistered / Unconfirmed
GUEST, unregistred user!
开发一个LED屏的发布公告程序,用Tmemo,如果里面字太多,需要分页显示生成图片//滚动下一幅 SendMessage(memo1.Handle,WM_VSCROLL,SB_PAGEDOWN, 0);然后判断是否到底function TForm1.ScrollIsMax: Boolean;var iPos, MinPos, MaxPos: Integer;begin GetScrollRange(memo1.Handle, SB_VERT, MinPos, MaxPos); iPos := GetScrollPos(memo1.Handle, SB_VERT); if iPos >= (MaxPos - MinPos - RichEdit1.Height) then Result:=True else Result:=false;end;但是得到的数据总是不对,改用RichEdit1后就没有问题但是原来用Tmemo可以画图,改用TRichEdit结果画的只是背景里面的文字画不上去。RichEdit1.PaintTo(img1.Canvas, 0, 0);改用如下方法:var MyBmp: TBitmap; R: TRect;begin MyBmp:=TBitmap.Create; R := Rect(0, 0,Width, Height) ; MyBmp.Width := Width; MyBmp.Height := Height; MyBmp.Canvas.CopyRect(R, RichEdit1.Canvas, R); MyBmp.SaveToFile('D:/T.bmp');发现RichEdit1没有Canvas属性。
 
看来Tmemo 和 TRichEdit 机制有很大不同。
 
用 IE 吧, QQ都不用 RICHEDIT 了.
 
我要提交到数据库的,必须用Tmemo 或者 TRichEdit 。
 
顶部